Проблема IP-пересылки
Это мой первый пост, поэтому заранее спасибо за помощь. Я постараюсь сделать фон кратким и актуальным.
Я использую сервер на centOS 4.6 для тестирования сетевого клиента. У меня зарезервировано место в локальной сети 10.2.80.X/24. Всего на сервере 4 порта Ethernet:
- (1) встроенный 2-портовый сетевой адаптер (wan0 и lan0)
- (1) Плата расширения PCI с 2 портами (lan1 и vid0)
Моя цель - позволить различным подсетям 10.2.80.X (всего 64) обмениваться данными друг с другом, а также другими внутренними ресурсами в сети 10.2.82.X. Ниже ссылка на мою грубую сетевую диаграмму.
Я могу заставить различные подсети 10.2.80.X общаться друг с другом довольно легко. However, I absolutely cannot get traffic going into lan0 to egress from wan0 into the greater corporate network:
- Test_dev_1 can ping its subnet gateway at 10.2.80.1 (on the server's virtual interface).
- Test_dev_1 can ping Test_dev_2
- Test_dev_1 can ping the wan0 port itself (10.2.82.195)
- Test_dev_1 CANNOT ping anything beyond that on the 10.2.82.X network. I can't ping the 10.2.82.1 gateway and can't ping 8.8.8.8 (google.com).
The wan0 port has full access to the 10.2.82.X network, but can't traverse through lan0 port:
- Can ping the gateway 10.2.82.1
- Can ping google.com (8.8.8.8)
- Can ping all addresses on the lan0 interface (10.2.80.1, 10.2.80.5, etc.)
- CANNOT ping any client devices on any of the 10.2.80.X subnets.
I've enabled IP forwarding, tried adding various FORWARD rules in iptables, disabled NetworkManager, changed gateways, double-checked my subnet masks, etc. etc. etc. I am out of ideas, my co-workers are out of ideas. I am stuck and deadlines are approaching, so I'm going crazy right now.
I'm open to any suggestions, but I have tried a lot of the common remedies.
Спасибо!
1 ответ
Проблема может быть на двух разных уровнях:
на уровне пересылки: ipforwarding можно отключить или неправильно настроить правила iptables
на уровне маршрутизации: ваша корпоративная сеть должна быть проинформирована о том, что различные сети 10.2.80.x могут быть доступны через IP 10.2.82.195. Если это невозможно, вам пришлось "маскироваться" (NAT) в вашей сети 10.2.80.x с использованием IP-интерфейса wan0 (10.2.82.195).
Я предлагаю вам сделать следующее:
1) на вашем Linux-компьютере запустите команду tcpdump -i на любом хосте icmp 10.2.82.1
2) на машине 10.2.80.x попытайтесь пропинговать IP 10.2.82.1.
В то время как вы заявили, что ping не работает, tcpdump на вашем Linux-сервере будет регистрировать поток трафика. Скопируйте его и вставьте сюда.