У меня сеть выглядит так:
+--------------+
| Linux Router |
+--------------+
10.0.1.100/24 | 10.0.0.100/24
|
Host A (10.0.1.101/24) ----+--- Host B (10.0.0.3/24)
с одной оговоркой: маршрутизатор Linux имеет только 1 физический порт Ethernet с 2 назначенными IP-адресами. Мне нужно уметь ping 10.0.0.3
от хоста A и ping 10.0.1.101
от хоста B, но я не могу. Зачем?
[root@Host_A ~]# ping -c1 10.0.0.3
PING 10.0.0.3 (10.0.0.3) 56(84) bytes of data.
From 10.0.1.100: icmp_seq=1 Redirect Host(New nexthop: 10.0.0.3)
Тогда это целевой хост недоступен. Вот как настроен мой маршрутизатор Linux:
cat / proc / sys / net / ipv4 / ip_forward:
1
IP ссылка:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether d0:5f:b8:fc:fc:ef brd ff:ff:ff:ff:ff:ff
IP-адрес:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether d0:5f:b8:fc:fc:ef brd ff:ff:ff:ff:ff:ff
inet 10.0.0.100/24 brd 10.0.0.255 scope global eth0
inet 10.0.1.100/24 brd 10.0.1.255 scope global eth0
inet6 fe80::d25f:b8ff:fefc:fcef/64 scope link
valid_lft forever preferred_lft forever
маршрут -n:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.0.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
Вам необходимо отключить роутер для отправки перенаправлений:
sudo sysctl -w ipv4.conf.eth0.send_redirects = 0
Вам нужно будет отредактировать /etc/sysctl.conf и добавить следующую строку, чтобы применить конфигурацию во время загрузки.
ipv4.conf.eth0.send_redirects = 0
Однако ваша конфигурация не оптимальна и не безопасна. Вы должны либо использовать маршрутизатор, либо разделить сеть на 2 VLAN. Вам понадобится коммутатор с поддержкой VLAN.
Другое решение - использовать более крупный префикс (например, заменить 10.0.0.100/24 и 10.0.1.0/24 на 10.0.0.0/23).