@chifth

Как направить DNS-запрос на другой сервер для отдельного диапазона IP при помощи iptables?

Не могу сделать ping по имени ПК (который находится в сети на 1-2 уровня выше).
Как можно добавить ещё один конкретный DNS сервер только для диапазона IP 192.168.5.x?
Или только для доменов из одного слова (имя пк)?. Вообщем чтобы запросы на сайты так и остались на 8.8.8.8 , а запросы на Vasya-PC - слались на 192.168.0.6 например?
  • Вопрос задан
  • 643 просмотра
Пригласить эксперта
Ответы на вопрос 3
mikes
@mikes
вы в DNS запрашиваете не IP, а FQDN, вот от этого и надо плясать.

если вы хотите мир резолвить через 8.8.8.8 а pc.somedomainname.ru через 192.168.0.6 то без разбора самих запросов dns это не сделать.
Можно конечно сделать правило в iptables которое будет для пакетов на 53 порт искать слово "somedomainname" и делать DNAT в нужное место, но лучше завести свой DNS сервер и настроить forward зоны в соответствии с вашими нуждами.

вполне подойдут dnsmasq или coredns

Но вообще мало входных данных, если это все ваши сети, то почему не сделать DNS сервер с ddns via dhcp или прописать все нужные записи самому.
Ответ написан
flapflapjack
@flapflapjack
на треть я прав
iptables -t nat -I -s 192.168.5.0/24 -d !192.168.0.6 -p tcp -m tcp --dport 53  -j DNAT --to-destination 192.168.0.6:53
iptables -t nat -I -s 192.168.5.0/24 -d !192.168.0.6 -p udp -m udp --dport 53  -j DNAT --to-destination 192.168.0.6:53


попробуйте так. Только что вы пингуете то? Хостнейм или айпишник?
Если айпишник, то DNS не причем.
Ответ написан
Комментировать
@UPSA
anykey. Я не программист, я просто ленивый.
Все как обычно ...
1. Ну, пожалуйста, поставьте в сети кеширующий ДНС сервер )))
Тогда все компьютеры в сети будут запрашивать его. На нем можно прописать соответствие IP-Name, иначе по имени пинг не работает. Исключение, на компе в hosts прописывать имена.
2. Сложность с подсетями.
ДНС сервер должен быть доступен во всех сетях одновременно. Следовательно:
а) в каждой подсети ставить ДНС сервер, где и прописывать соответствие имен.
б) ставить ДНС сервер на комп с несколькими сетевыми интерфейсами. Каждый интерфейс в свою подсеть.
в) строить подсеть общую с другими подсетями и в ней устанавливать ДНС сервер
3. И добавьте - маршрутизацию пакетов через iptables уже по IP-адресам
Ответ написан
Ваш ответ на вопрос

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

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