History log of /dragonfly/sys/net/ipfw3_nat/ip_fw3_nat.h (Results 1 – 16 of 16)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2, v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1
# 4408d548 12-May-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3_nat: highspeed lockless in-kernel NAT

RB-Tree to stored the state for the outgoing packets, and multidimentional
array of pointers to keep the state for the incoming packets.


# ca9d3a28 13-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: move the implementation back to *.c file


# 936e3df8 13-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: kernel NAT without libalias

More than just one address can be configured in each NAT
configuraton and each coming packet will be translated to
one of these addresses randomly.

e.g.
ip

ipfw3nat: kernel NAT without libalias

More than just one address can be configured in each NAT
configuraton and each coming packet will be translated to
one of these addresses randomly.

e.g.
ipfw3 nat 1 config ip 192.168.1.1 192.168.1.2

A schedule will automatically purge the expired translations.
and its interval can be configure via below sysctl variables.
net.inet.ip.fw3_nat.udp_timeout
net.inet.ip.fw3_nat.tcp_timeout
net.inet.ip.fw3_nat.icmp_timeout

show more ...


# 8e040fac 13-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: show translations

same as 'show ip nat translations'


# cea1826c 13-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: release the nat context during fini


# df0c223e 09-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: add conf in kernel


# c8ac7327 08-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: move implimentation back to *.c file


# 4bff2121 08-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: cleanup for LINT64 build


# 71194d7a 08-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: standardize the function names

prefix:
ip_fw3_ - function in kernel space
ipfw_ - function in userland.


# c42f8166 08-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: RB_tree to keep the translation records


# 825a5d27 08-Apr-2018 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3nat: cleanup 2


Revision tags: v5.2.0, v5.3.0, v5.2.0rc
# 93234d8a 21-Jan-2018 zrj <rimvydas.jasinskas@gmail.com>

ipfw3_nat: Reindent switch cases.

No functional change.

While there, make add_redir_spool_cfg() and del_redir_spool_cfg() static.


Revision tags: v5.0.2, v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1
# 981dc56d 26-Jun-2017 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3_nat: move func prototype into header


Revision tags: v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0
# 9187b359 21-Jun-2016 Bill Yuan <bycn82@dragonflybsd.org>

ipfw3: lockless in-kernel NAT

The libalias is used in kernel space for in-kernel NAT, and its alias_link
entries are stored with LIST. so all the packets which need to be NAT will scan
against the L

ipfw3: lockless in-kernel NAT

The libalias is used in kernel space for in-kernel NAT, and its alias_link
entries are stored with LIST. so all the packets which need to be NAT will scan
against the LIST and trying to find the matched alias_link. by seperating the
libalias into context of different CPUs, the lock can be removed. and due to the
nature of NAT, the outgoing and incoming packets are possible to be handled by
different CPUs, to ensure the returning packet can be translated properly, the
newly created alias_link is required to be duplicated and inserted into contexts
of both CPUs.

e.g.
ipfw3 nat 1 config if em0
ipfw3 nat 1 all via em0
ipfw3 nat 1 show state

show more ...


Revision tags: v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0
# 0fe3a974 21-Jun-2015 Bill Yuan <bycn82@leaf.dragonflybsd.org>

ipfw3: show NAT records

show all 'NAT records' which relate to the 'NAT config 1'
which is same as 'ip show nat translation' in CISCO routers.

usage:
ipfw3 nat 1 show state


Revision tags: v4.0.6, v4.3.0, v4.2.0rc, v4.0.5
# 6a03354e 12-Mar-2015 Matthew Dillon <dillon@apollo.backplane.com>

ipfw2 - Rename FreeBSD ipfw port to ipfw3

* Rename all elements of the port to ipfw3 to reduce confusion.