Назад | Перейти на главную страницу

как настроить Linux vm в качестве маршрутизатора, который обменивается данными между двумя подсетями

У меня на vmplayer установлено 3 виртуальных машины. Из которых я сделал два из них как хост двух разных сетей. Host1 ip=192.168.1.13 gateway=192.168.1.11 и Host2 ip=192.168.2.14 и gateway=192.168.2.12 . Теперь мне нужна третья виртуальная машина в качестве маршрутизатора, который может передавать пакеты с первой виртуальной машины на вторую виртуальную машину, имеет два адаптера. eth0 ip=192.168.1.11 и eth1 ip=192.168.2.12 . Host1 подключен к eth0 и Host2 подключен к eth1. Как мне настроить маршрутизатор, чтобы два хоста могли общаться и NAT'ing может быть выполнено? Пожалуйста, ответьте как можно скорее.

Вы не говорите, какая ОС, поэтому вам приходится иметь дело с предположениями - поэтому предполагая, что производная Debian

Включить пересылку. В /etc/sysctl.conf установите: net.ipv4.ip_forward = 1

Это все, что вам нужно, чтобы пинговать A -> B.

Поскольку вам также по какой-то причине нужен NAT, в /etc/rc.local добавьте необходимые модули - например:

modprobe ipt_conntrack
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ip_conntrack_irc
modprobe ip_nat_irc
modprobe ip_nat_snmp_basic

Также в /etc/rc.local добавьте:

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.1.11
iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 192.168.2.12

Если вы хотите, чтобы шлюз также имел доступ к Интернету, например, тогда вы должны дать ему третий интерфейс, например, eth2 с IP-адресом в вашей локальной сети, например 10.0.0.200, затем добавьте это:

iptables -t nat -A POSTROUTING -o eth2 -j SNAT --to-source 10.0.0.200

или если у него был адрес DHCP (т.е. это не статический адрес), сделайте это вместо

iptables -t nat -A POSTROUTING -o eth2 -j MASQUERADE

затем, наконец, убедитесь, что у шлюза есть маршрут по умолчанию, указывающий на ваш шлюз локальной сети Интернет, оптоволоконную линию или модем DSL. В любом случае это будет сделано автоматически, если ему назначен DHCP.