Переадресация IP, но получение запросов ARP

У меня проблема с переадресацией ip. В основном у меня есть два интерфейса:

eth0 - 192.168.9.2 - Маршруты во внутреннюю сеть (192.168.20.0)

eth1 - 192.168.8.100 - Маршруты в интернет

      pi@raspberrypi:~ $ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.9.2  netmask 255.255.255.252  broadcast 192.168.9.3
        inet6 fe80::4864:3a07:de69:4cfe  prefixlen 64  scopeid 0x20<link>
        ether b8:27:eb:9c:07:bd  txqueuelen 1000  (Ethernet)
        RX packets 14725  bytes 933855 (911.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 15977  bytes 8186253 (7.8 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.8.100  netmask 255.255.255.0  broadcast 192.168.8.255
        inet6 fe80::e5b:8fff:fe27:9a64  prefixlen 64  scopeid 0x20<link>
        ether 0c:5b:8f:27:9a:64  txqueuelen 1000  (Ethernet)
        RX packets 121  bytes 16517 (16.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 829  bytes 69496 (67.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


pi@raspberrypi:~ $ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.8.1     0.0.0.0         UG    204    0        0 eth1
192.168.8.0     0.0.0.0         255.255.255.0   U     204    0        0 eth1
192.168.9.0     0.0.0.0         255.255.255.252 U     202    0        0 eth0
192.168.20.0    192.168.9.1     255.255.255.0   UG    20     0        0 eth0
pi@raspberrypi:~ $ 

IP-переадресация включена

      pi@raspberrypi:~ $ cat /proc/sys/net/ipv4/ip_forward
1

Когда я пытаюсь выполнить ping из eth1, я не получаю ответа. Дамп TCP также не показывает пакетов.

      pi@raspberrypi:~ $ sudo ping -I 192.168.9.2 4.2.2.2
PING 4.2.2.2 (4.2.2.2) from 192.168.9.2 : 56(84) bytes of data.
^C
--- 4.2.2.2 ping statistics ---
10 packets transmitted, 0 received, 100% packet loss, time 340ms

Пинг с eth0 проходит нормально. Если я пропингую из своей локальной сети интерфейс, обращенный к eth0, я не получу ответа.

      admin@er4:~$ sudo ping -I eth1 4.2.2.2
PING 4.2.2.2 (4.2.2.2) from 192.168.9.1 eth1: 56(84) bytes of data.
^C
--- 4.2.2.2 ping statistics ---
7 packets transmitted, 0 received, 100% packet loss, time 6209ms

Но он пытается получить запись ARP для этого пункта назначения.

      pi@raspberrypi:~ $ sudo tcpdump host 4.2.2.2
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
19:16:14.894969 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:15.904174 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:16.944161 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:17.994377 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:19.024197 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:20.064207 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:21.104393 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:22.144260 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
19:16:23.184334 ARP, Request who-has b.resolvers.Level3.net tell 192.168.9.1, length 46
^C
9 packets captured
11 packets received by filter
0 packets dropped by kernel

Я немного погуглил и думаю, что мне нужно добавить правило политики IP, но я не могу заставить его работать. я пытался

      sudo ip rule add oif eth0 lookup default

но это не имеет значения. Я не уверен, куда идти отсюда.

0 ответов

Другие вопросы по тегам