Tema: iproute/iptables anomalija?
Autorius: andrws
Data: 2010-07-29 15:26:49
Sveiki,
stovi linux deze su 7iais tinklo interfeisais- keturiems vietiniams tinklams 
dalina interneta.
iptables atrode mazdaug taip:
$IPT -t filter -A FORWARD -i eth0 -s 192.168.4.0/24 -j ACCEPT
$IPT -t filter -A FORWARD -i eth2 -s 192.168.2.0/24 -j ACCEPT
$IPT -t filter -A FORWARD -i eth3 -s 192.168.1.0/24 -j ACCEPT
$IPT -t filter -A FORWARD -i eth5 -s 192.168.5.0/24 -j ACCEPT
$IPT -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth6 -j SNAT --to-source 
1.2.3.4
$IPT -t nat -A POSTROUTING -s 192.168.2.0/24 -o eth6 -j SNAT --to-source 
1.2.3.4
$IPT -t nat -A POSTROUTING -s 192.168.4.0/24 -o eth6 -j SNAT --to-source 
1.2.3.4
$IPT -t nat -A POSTROUTING -s 192.168.5.0/24 -o eth6 -j SNAT --to-source 
1.2.3.4

Vienas tinklas uzsinorejo naudotis nuosava interneto linija, tiekejas atvede 
atskira kabeli, pajungiam ant eth1 ip-2.3.4.4, gw-2.3.4.5
Padariau taip:
echo 200 mc >> /etc/iproute2/rt_tables
ip rule add from 192.168.1.0/24 lookup mc
ip route add default via 2.3.4.5 dev eth1 table mc
iptables scripte dadejau:
$IPT -t filter -A FORWARD -i eth1 -s 192.168.1.0/24 -j ACCEPT
ir pakeiciau
$IPT -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth6 -j SNAT --to-source 
1.2.3.4
i
$IPT -t nat -A POSTROUTING -s 192.168.1.0/24 -o eth1 -j SNAT --to-source 
2.3.4.4

rezultatas: puse 192.168.1.0/24 kompu puikiausiai eina i interneta nauju 
keliu.
kita puse kompu- nebepingina i gatewejaus ip- 192.168.1.254 ir nebemato jo 
net arp lentelese, nors is jo pacio sekmingai gauna dhcp setingus. is gw 
irgi nesimato tu kompu.

sekantis etapas- suvedu visu ip po viena:
ip rule add from 192.168.1.1 lookup mc
......
ip rule add from 192.168.1.20 lookup mc
ip route add default via 2.3.4.5 dev eth1 table mc
$IPT -t filter -A FORWARD -i eth1 -s 192.168.1.0/24 -j ACCEPT
$IPT -t nat -A POSTROUTING -s 192.168.1.1 -o eth1 -j SNAT --to-source 
2.3.4.4
......
$IPT -t nat -A POSTROUTING -s 192.168.1.20 -o eth1 -j SNAT --to-source 
2.3.4.4
ir viskas pinginasi, routinasi ir veikia :)

klausimas- wtf, kodel nurodzius visa potinkli neveikia, ir kaip padaryti, 
kad veiktu nesuvedinejant po viena ip?