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

перенаправление порта на имя хоста

Как можно перенаправить порт на имя хоста и порт. Я смотрел этот пост: Iptables перенаправляет весь трафик на указанный порт на другое устройство и посмотрите, как это сделать порт на ip, но что, если мне нужно сделать порт на имя хоста? Пытался указать хост в качестве пункта назначения, но он выдает ошибку в iptables

 iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination ehb-us-redis-001.ehb-usredis.u1.cache.com:6379
iptables v1.4.21: Bad IP address "ehb"

Try `iptables -h' or 'iptables --help' for more information.

Вы не можете. Синтаксис указан в iptables-extension страница руководства как

--to-destination [ipaddr[-ipaddr]][:port[-port]]

Пока iptables -s и -d синтаксис address[/mask] позволяет использовать имена хостов, это не рекомендуется, поскольку может вызвать проблемы с безопасностью. Как --to-destination принимает диапазоны IP-адресов (для простой циклической балансировки нагрузки), синтаксис адреса не имеет значения.

Имена хостов будут разрешены только один раз, прежде чем правило будет отправлено ядру. Обратите внимание, что указывать любое имя, которое будет разрешено удаленным запросом, например DNS, - действительно плохая идея.

Более того, модуль ядра Netfilter не обрабатывает имена хостов; Если вы думаете, что это решит проблему с изменением IP-адресов, этого не произойдет.

Если вам действительно нужно использовать имена хостов, обратный прокси было бы более применимо.