Sinot
@Sinot

Как связать две сети через третью?

Приветствую.

В сети 192.168.0.0/22 есть несколько ПК и шлюз на Windows XP (192.168.0.1). В этой же сети есть виртуальная машина на Debian (eth0 192.168.2.6), на этой же виртуальной машине есть еще один интерфейс eth1 172.16.16.1 (172.16.16.0/29). В этой сети есть железяка (172.16.16.2) если ее указать в качестве шлюза, то будет доступен узел 172.20.82.1. Железяку не настроить (но на ней шлюзом прописан 172.16.16.1).

Собственно как получить доступ к этому узлу (172.20.82.1) из сети 192.168.0.0/22?

Пробовал и настраивать и маршруты, и пробросы портов (ПК в сети 192.168.0.0/22 работают с 172.20.82.1, думая что это 192.168.2.6, этот вариант тоже устроит), но ничего у меня не получилось.

Спасибо.

UPD 1

route на Debian:
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.20.82.1     172.16.16.2     255.255.255.255 UGH   0      0        0 eth1
172.16.16.0     0.0.0.0         255.255.255.248 U     0      0        0 eth1
192.168.0.0     0.0.0.0         255.255.252.0   U     0      0        0 eth0

iptables пустой и все разрешено.

На машине в сети 192.168.0.0/22 если прописать шлюзом 192.168.2.6 или добавить маршруты:
route add 172.16.16.0 mask 255.255.255.248 192.168.2.6
route add 172.20.82.1 192.168.2.6

Сеть 172.16.16.0/29 видна, пинги проходят. А вот 172.20.82.1 не видно.

Собственно на этом я и остановился. Есть основания полагать что на железяке что-то настроено не так? Посмотреть ее настройки пока не представляется возможным.

UDP 2
На Debian прописал маскарад и все заработало:
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/22 -d 172.20.82.1 -j MASQUERADE


На шлюзе Windos XP (192.168.0.1) прописал:
route add 172.20.82.1 192.168.2.6
И теперь машины в сети 192.168.0.0/22 теперь тоже видят 172.20.82.1
  • Вопрос задан
  • 763 просмотра
Пригласить эксперта
Ответы на вопрос 2
vvpoloskin
@vvpoloskin Куратор тега Сетевое администрирование
Инженер связи
Приучитесь рисовать схемы, тогда будете получать качественные ответы. По сабжу из того, что понял:

1) проверить, все ли разрешено на виртуальной машине в IPTABLES во ВСЕХ цепочках, в первую очередь FORWARDING. Проверить, включен ли форвардинг на ней же (/proc/sys/net/ipv4/ip_forward)
2) проверитьмаршруты на железяке, может быть на ней не default?
3) временно забыть про шлюз win xp и поставить для всех шлюзом виртуалку
4) если не проканало, попробовать с виртуалки запустить ping с параметром source address 192.168.2.6
Ответ написан
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
1. В сети 192.168.0.0/22 на всех компьютерах под Windows добавить постоянный маршрут
route -p add 172.20.82.1 mask 255.255.255.255 192.168.2.6

2. На Debian'е включить маршрутизацию, прописав в файле /etc/sysctl.conf
net.ipv4.ip_forward=1
Добавить маршрут в файл /etc/network/interfaces для интерфейса eth1
up route add 172.20.82.1 gw 172.16.16.2
Выполнить те же команды, чтобы не перезагружать сервер
# sysctl net.ipv4.ip_forward=1
# route add 172.20.82.1 gw 172.16.16.2

Теоретически всё должно работать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы