дропаются транзитные пакеты (linux/iptables)
Добавлено: 2010-12-11 17:23:10
Есть линукс с одной сетевкой. На ней подняты туннели ipip.
С этого роутера через bgp анонсируются некоторые сети. Пакеты, прилетающие через tun1 с хоста 192.168.135.17 прекрасно достигают анонсируемых сетей, а вот если пакеты прилетают с хоста, расположенного за роутером 192.168.135.17, то они дропаются прямо на интерфейсе tun1 (в tcpdump вижу как пакеты прилетают на tun1, но на eth0 ничего не наблюдаю).
правила iptables
таблица маршрутов
Почему пакеты, например с адреса 192.168.130.2 летяшие в сеть 193.34.x.x дропаются сразу на tun1?
Код: Выделить всё
%ifconfig
eth0 Link encap:Ethernet HWaddr 00:13:77:00:05:2f
inet addr:10.1.0.80 Bcast:10.1.0.127 Mask:255.255.255.128
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:668062 errors:0 dropped:0 overruns:0 frame:0
TX packets:656255 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:465383856 (443.8 MiB) TX bytes:428262659 (408.4 MiB)
Interrupt:10
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:122 errors:0 dropped:0 overruns:0 frame:0
TX packets:122 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:9273 (9.0 KiB) TX bytes:9273 (9.0 KiB)
tun0 Link encap:IPIP Tunnel HWaddr
inet addr:192.168.7.2 P-t-P:192.168.7.1 Mask:255.255.255.252
UP POINTOPOINT RUNNING NOARP MTU:1480 Metric:1
RX packets:413501 errors:0 dropped:0 overruns:0 frame:0
TX packets:257357 errors:10 dropped:0 overruns:0 carrier:10
collisions:0 txqueuelen:0
RX bytes:409685310 (390.7 MiB) TX bytes:19701689 (18.7 MiB)
tun1 Link encap:IPIP Tunnel HWaddr
inet addr:192.168.135.18 P-t-P:192.168.135.17 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MTU:1480 Metric:1
RX packets:76 errors:0 dropped:0 overruns:0 frame:0
TX packets:84 errors:3 dropped:0 overruns:0 carrier:3
collisions:0 txqueuelen:0
RX bytes:5029 (4.9 KiB) TX bytes:5505 (5.3 KiB)
правила iptables
Код: Выделить всё
%sudo iptables -S
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT
%sudo iptables -t nat -S
-P PREROUTING ACCEPT
-P OUTPUT ACCEPT
-P POSTROUTING ACCEPT
-A PREROUTING -d 91.X.X.X/32 -p tcp -m tcp --dport 45044 -j DNAT --to-destination 192.168.5.100:45044
-A PREROUTING -d 91.X.X.X/32 -p udp -m udp --dport 45044 -j DNAT --to-destination 192.168.5.100:45044
-A POSTROUTING -o lo -j ACCEPT
-A POSTROUTING -o tun0 -j ACCEPT
-A POSTROUTING -o tun1 -j ACCEPT
-A POSTROUTING -s 192.168.5.150/32 -j ACCEPT
-A POSTROUTING -d 10.0.0.0/8 -j MASQUERADE
-A POSTROUTING -d 192.168.0.0/16 -j MASQUERADE
-A POSTROUTING -d 193.X.X.X/32 -j MASQUERADE
-A POSTROUTING -d 193.X.X.X/32 -j MASQUERADE
-A POSTROUTING -j SNAT --to-source 91.202.20.252
Код: Выделить всё
%sudo route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.135.17 0.0.0.0 255.255.255.255 UH 0 0 0 tun1
192.168.135.5 192.168.7.1 255.255.255.255 UGH 20 0 0 tun0
91.202.X.X 192.168.7.1 255.255.255.255 UGH 0 0 0 tun0
78.132.X.X 192.168.7.1 255.255.255.255 UGH 0 0 0 tun0
192.168.7.0 0.0.0.0 255.255.255.252 U 0 0 0 tun0
192.168.2.4 192.168.7.1 255.255.255.252 UG 20 0 0 tun0
192.168.2.0 192.168.7.1 255.255.255.240 UG 20 0 0 tun0
192.168.2.16 192.168.7.1 255.255.255.240 UG 20 0 0 tun0
192.168.6.0 192.168.7.1 255.255.255.192 UG 20 0 0 tun0
192.168.6.64 192.168.7.1 255.255.255.192 UG 20 0 0 tun0
10.1.0.0 0.0.0.0 255.255.255.128 U 0 0 0 eth0
192.168.5.0 192.168.7.1 255.255.255.0 UG 20 0 0 tun0
83.234.X.X 192.168.135.17 255.255.255.0 UG 0 0 0 tun1
91.211.X.X 192.168.135.17 255.255.252.0 UG 0 0 0 tun1
193.203.X.X 192.168.135.17 255.255.252.0 UG 0 0 0 tun1
77.93.X.X 192.168.135.17 255.255.252.0 UG 0 0 0 tun1
93.186.X.X 192.168.135.17 255.255.240.0 UG 0 0 0 tun1
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 10.1.0.1 0.0.0.0 UG 0 0 0 eth0