Sorry všem, kteří jsou stále ještě šokováni přechodem z 2.0 (ipfwadm) na 2.2 (ipchains). Jsou zde dobré a špatné zprávy.
Za prvé, můžeš používat ipchains a ipfwadm stejně jako předtím. Abys je mohl používat, musíš nejprve zavést moduly jádra `ipchains.o' nebo `ipfwadm.o', které najdeš v poslední distribuci netfilter. Tyto moduly se vzájemně vylučují (byl jsi varován) a neměly by být kombinovány s žádnými jinými moduly netfilteru.
Jakmile je jeden z těchto modulů zaveden, můžeš používat ipchains a ipfwadm zcela běžným způsobem, pouze s těmito odlišnostmi:
Pro hackery:
To chce většina. Jestliže máš dynamicky přidělenou IP adresu PPP připojení (pokud nevíš, tak jsi to ty), chceš prostě sdělit svému počítači, že všechny pakety pocházející z tvé vnitřní sítě mají vypadat jako by pocházely z počítače s PPP připojením.
# Zavést NAT modul (to zavede všechny ostatní).
modprobe iptable_nat
# V tabulce NAT (-t nat) připoj pravidlo (-A), že po dokončení směrování
# (POSTROUTING) má být u všech paketů odcházející z ppp0 (-o ppp0) prováděno
# MASQUERADE spojení (-j MASQUERADE).
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
# Zapnutí IP forwardování
echo 1 > /proc/sys/net/ipv4/ip_forward
Povšimni si, že neprovádíš žádné filtrování paketů: k tomu si přečti Packet Filtering HOWTO: `Mixing NAT and Packet Filtering'.
Neobtěžoval jsem se tolik se zachováním zpětné kompatibility, protože je to velmi choulostivá věc. Pro port forwarding můžeš jednoduše použít `iptables -t nat'. Tedy například v Linuxu 2.2 můžeš mít:
# Linux 2.2
# Směruj TCP pakety z 1.2.3.4, port 8080 na 192.168.1.1, port 80
ipmasqadm portfw -a -P tcp -L 1.2.3.4 8080 -R 192.168.1.1 80
Nyní bys měl mít:
# Linux 2.4
# Připoj pravidlo před směrováním (-A PREROUTING) do NAT tabulky (-t nat), že
# TCP pakety (-p tcp) z 1.2.3.4 (-d 1.2.3.4) port 8080 (--dport 8080)
# mají cíl mapován (-j DNAT) na 192.168.1.1, port 80
# (--to 192.168.1.1:80).
iptables -A PREROUTING -t nat -p tcp -d 1.2.3.4 --dport 8080 \
-j DNAT --to 192.168.1.1:80