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

Как направить две подсети в Интернет через 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). Весь остальной трафик маскируется - но трафик на другие порты представляет собой проблему - например, сервер лицензий DRM Microsoft, сервер обновлений AVG - недоступны!? Но я думаю, что что-то неправильно настроено в таблице маршрутизации ?? Мой брандмауэр принимает весь исходящий трафик после перенаправления трафика порта 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 или брандмауэра (возможно, ОБА).

P.S. Последняя линия маршрутизации вам не нужна. Она уже покрыта той, что выше.

Связанный контент