Проблема 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-сервере будет регистрировать поток трафика. Скопируйте его и вставьте сюда.

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