Я пытаюсь сделать свой общедоступный IP-адрес доступным также из локальной сети.
Я знаю, что лучше пролить DNS, чтобы иметь внутреннюю зону, которая решает хосты с внутренним IP, но по многим причинам это не применимо к моей среде.
У меня "простая" конфигурация, сервер и несколько портов NAT:
set nat destination rule 4002 description 'NAT inbound'
set nat destination rule 4002 destination address 'x.y.z.k'
set nat destination rule 4002 destination port '80,443,10050,10051,11051'
set nat destination rule 4002 inbound-interface 'bond1'
set nat destination rule 4002 protocol 'tcp'
set nat destination rule 4002 translation address '10.0.0.190'
set nat source rule 4002 description 'NAT outbound'
set nat source rule 4002 outbound-interface 'bond1'
set nat source rule 4002 source address '10.0.0.190'
set nat source rule 4002 translation address 'x.y.z.k'
Когда я пытаюсь получить доступ к общедоступному IP-адресу из внутренней сети, я не могу его получить. Это проблема, похожая на Как реализовать шлейф / отражение Nat?
Я нашел здесь решение: http://onebadpixel.com/blog/2014/01/22/part-5-nat-translation/
Итак, я попытался добавить это в конфигурацию:
set nat source rule 1000 description 'NAT hairpin'
set nat source rule 1000 destination address '10.0.0.128/24'
set nat source rule 1000 outbound-interface 'bond0'
set nat source rule 1000 source address '10.0.0.128/24'
set nat source rule 1000 translation address 'masquerade'
Но все равно не работает.
Есть предложения о том, как изменить мою конфигурацию, чтобы использовать шпильку DNS?
Я не эксперт по Вятте, я пришел из мира Cisco ASA, где это было просто ... просто добавьте "dns" в правило NAT;)
Спасибо Фабио
Вы можете просмотреть пример здесь (ответ от SteveP):
http://forum.vyos.net/showthread.php?tid=6554
(VyOs - это форк Vyatta с открытым исходным кодом, и это должно быть применимо)
Обратите внимание, что шпилька выполняется с помощью правила назначения nat, а не источника nat.
Назначение NAT изменяет IP-адрес назначения (что вам и нужно в данном случае) и выполняется до принятия решения о маршрутизации, в то время как источник NAT перезаписывает исходный IP-адрес, обрабатывается после решения о маршрутизации.
Также в вашей конфигурации любопытно "10.0.0.128/24". Вы должны использовать либо 10.0.0.0/24 для сети, либо 10.0.0.128 для хоста.