Next Previous Contents

4. Rychlý přestup z 2.0 a 2.2 jádra

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:

4.1 Chci jen masquerading! Pomoc!

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'.

4.2 A co ipmasqadm?

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


Next Previous Contents