Как направить две подсети в Интернет через Linux-бокс, действующий как маршрутизатор и прокси

У меня есть окно Linux, которое действует как маршрутизатор, DHCP-сервер и прокси. На моей локальной сети мне нужно две подсети, чтобы иметь достаточно IP-адресов: 192.168.100.0 - 192.168.101.255 - это диапазон, который мне нужен. Обе подсети должны иметь доступ к Интернету через мой ящик Linux,

На eth1 (em1) у меня интернет-модем подключен со статическим IP.

На eth2 (em2) моя локальная сеть подключена со следующими настройками:

  • IP-адрес: 192.168.100.1
  • Адрес трансляции: 192.168.101.255
  • Маска подсети: 255.255.254.0
  • Шлюз по умолчанию: 192.168.100.1

Моя таблица маршрутизации выглядит следующим образом:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         56343ffe.rev.st 0.0.0.0         UG    0      0        0 em1
86.52.0.0       *               255.255.192.0   U     1      0        0 em1
192.168.100.0   *               255.255.254.0   U     1      0        0 em2
192.168.101.0   *               255.255.255.0   U     0      0        0 em2

Весь трафик с порта 80 перенаправляется на мой прокси-сервер в shorewall - и это прекрасно работает - все хосты могут получать доступ к веб-сайтам, YouTube и т. Д. (Порт 80). Весь остальной трафик маскируется - но трафик на другие порты является проблемой - например, сервер обновлений AVG сервера лицензий DRM от Microsoft - недоступен!? Но я считаю, что что-то неправильно настроено в таблице маршрутизации?? Мой брандмауэр принимает весь исходящий трафик после перенаправления трафика порта 80.

Изменить - вывод из моего брандмауэра (я заменил числа в интернет-адресе на xxx.xxx):

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
dnat       all  --  anywhere             anywhere

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
em1_masq   all  --  anywhere             anywhere

Chain dnat (1 references)
target     prot opt source               destination
loc_dnat   all  --  anywhere             anywhere

Chain em1_masq (1 references)
target     prot opt source               destination
SNAT       all  --  192.168.100.0/24     anywhere             to:86.52.xxx.xxx
SNAT       all  --  192.168.101.0/24     anywhere             to:86.52.xxx.xxx

Chain loc_dnat (1 references)
target     prot opt source               destination
REDIRECT   tcp  --  192.168.100.0/24     anywhere             multiport dports http,squid redir ports 8080
REDIRECT   tcp  --  192.168.101.0/24     anywhere             multiport dports http,squid redir ports 8080

1 ответ

Вам придется NAT (маскарад) им.
И там вы терпите неудачу.
Вы говорите, что это маскируется, но, очевидно, это не работает.
(Порт 80 работает, потому что он проксируется.)

Существует некоторая конфигурация на NAT или брандмауэре (возможно, ОБА), неправильная.

PS Вам не нужна эта последняя линия маршрутизации. Это уже покрыто тем выше этого.

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