Uz to tu nekde je, ale opakovani matka moudrosti.
Nastavis si sit (ipcka ...)
Zapnes forwardovani paketu (da se i nekde v cfg souborech)
echo 1 > /proc/sys/net/ipv4/ip_forward
Default route nastavis na tu verejno IP. (bud v cfg file nebo ruco pomoci route)
Tenhle jedinej radek staci aby to jelo.
iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to 1.2.3.4
Pokud chces provozovat neco (server) vevnitr forwardnes si prislusnej port
iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp -m tcp --dport 1412 -j DNAT --to-destination 192.168.0.32
Pak uz jen pridas pravidla pro jednotlivy IP napr:
Kód:
iptables -t mangle -N INCOUNT
iptables -t mangle -N OUTCOUNT
iptables -t mangle -A OUTCOUNT -s 192.168.0.32 -i eth0 -j MARK --set-mark 0x1
iptables -t mangle -A OUTCOUNT -s 192.168.0.33 -i eth0 -j MARK --set-mark 0x2
iptables -t mangle -A OUTCOUNT -s 192.168.0.34 -i eth0 -j MARK --set-mark 0x3
iptables -t mangle -A OUTCOUNT -j RETURN
iptables -t mangle -A PREROUTING -s 192.168.0.0/24 -j OUTCOUNT
iptables -t mangle -A INCOUNT -d 192.168.0.32 -j RETURN
iptables -t mangle -A INCOUNT -d 192.168.0.33 -j RETURN
iptables -t mangle -A INCOUNT -d 192.168.0.34 -j RETURN
iptables -t mangle -A INCOUNT -j RETURN
iptables -t mangle -A POSTROUTING -d 192.168.0.0/24 -j INCOUNT
Markovani v pripade OUT je tam proto, ze to pak muzes pouzit u shapingu (abys poznal ty pakety, paac budou mit vsechny stejnou IP)
Ty hodnoty z toho dostanes treba takhle:
Kód:
for IP in 32 33 34; do
UploadForIP=$(iptables -t mangle -L OUTCOUNT -vnx \
|sed -ne "{s/^ *\([0-9]\+\) \+\([0-9]\+\) .\{35\}\([1-9][0-9]*\.[0-9]*\.[0-9]*\.$IP\).*$/\2/p;}")
done
Meni se tam jen ta posledni cast IP (das to do smycky) v tomhle pripade se nenuluje, pokud chces nulovat, dodas jeste parametr Z. Podobne pro download.