Маршрутизация ESXi. Подключение NFS из удаленной сети. | FreeBSD, Linux, VMware
Подняли изолированный хост ESXi в DMZ. Выход в сеть через шлюз. Шлюз на FreeBSD, подключен к DMZ (сеть 172.16.5.0/24) и основной LAN 10.0.0.0/24 (в лан – vSphere, остальные хосты esxi, файловый сервер (NFS). Задача – заставить хост ESXi в изолированной сети работать с NFS хранилищем в удаленной сети.
Шлюз. FreeBSD. KernelNAT:
${fwcmd} add nat 1 ip from any to any
Эта строка в ipfw позволяет роутить и натить все на всех трех интерфейсах – интерфейс в интернет, и два интерфейса – в DMZ и локальную общую сеть.
Далее ESXi. Для работы с маршрутами в ESXi есть команда esxcfg-route. Из GUI – в консоли и через vSphere мы можем настроить дефолтный шлюз. Чтобы настроить дополнительный маршрут – нужен ssh (или наверное через CLI тоже можно). Я делал в ssh.
Просмотр маршрутов:
#esxcfg-route --list
Добавляем маршрут в LAN сеть:
#esxcfg-route -a 10.0.0.0/24 172.16.5.1
172.16.5.1 – айпи шлюза в ДМЗ. Командой говорим – все что для 10.0.0.0/24 шлем на 172.16.5.1.
После этого можно пинговать интерфейс шлюза в сети 10.0.0.0/24 (у меня это 10.0.0.2).
Далее. Теперь для того чтобы хост из LAN (NFS сервер в нашем случае) знаку куда отправлять ответные пакеты настраиваем маршрут на нем.
Пусть это хост 10.0.0.10. У меня это CentOS. Делаем:
#route add -net 172.16.5.0 netmask 255.255.255.0 gw 10.0.0.2
Указываем именно gw (просто указания интерфейса недостаточно).
Все. После этого пинг будет проходить от хоста из ДМЗ до NFS сервера и обратно.
Далее правим exports для того чтобы дать доступ к NFS машинам из сети DMZ (172.16.5.0/24).
/storage 172.16.5.0/24(rw,insecure,async,no_root_squash)
И применим изменения:
#exportfs -r
Теперь идем на наш xост ESXi и подключившись клиентом (через шлюза по впн) добавляем NFS хранилище. Все должно подмонтироваться без проблем.
PS: На винде маршрут к удаленной сети добавляем командой (пример):
route add 10.0.0.0 172.16.5.1