5c04f73e07
CLAT is customer-side translator that algorithmically translates 1:1 private IPv4 addresses to global IPv6 addresses, and vice versa. It is implemented as part of ipfw_nat64 kernel module. When module is loaded or compiled into the kernel, it registers "nat64clat" external action. External action named instance can be created using `create` command and then used in ipfw rules. The create command accepts two IPv6 prefixes `plat_prefix` and `clat_prefix`. If plat_prefix is ommitted, IPv6 NAT64 Well-Known prefix 64:ff9b::/96 will be used. # ipfw nat64clat CLAT create clat_prefix SRC_PFX plat_prefix DST_PFX # ipfw add nat64clat CLAT ip4 from IPv4_PFX to any out # ipfw add nat64clat CLAT ip6 from DST_PFX to SRC_PFX in Obtained from: Yandex LLC Submitted by: Boris N. Lytochkin MFC after: 1 month Relnotes: yes Sponsored by: Yandex LLC
20 lines
285 B
Makefile
20 lines
285 B
Makefile
# $FreeBSD$
|
|
|
|
.include <src.opts.mk>
|
|
|
|
PACKAGE=ipfw
|
|
PROG= ipfw
|
|
SRCS= ipfw2.c dummynet.c ipv6.c main.c nat.c tables.c
|
|
SRCS+= nat64clat.c nat64lsn.c nat64stl.c nptv6.c
|
|
WARNS?= 2
|
|
|
|
.if ${MK_PF} != "no"
|
|
SRCS+= altq.c
|
|
CFLAGS+=-DPF
|
|
.endif
|
|
|
|
LIBADD= jail util
|
|
MAN= ipfw.8
|
|
|
|
.include <bsd.prog.mk>
|