2

Я пытаюсь настроить Debian как маршрутизатор / шлюз в моей сети, при этом eth0 подключается к модему моего провайдера, а eth1 - к локальной сети.

eth0 нуждается в DHCP, чтобы он получал правильный IP-адрес от моего модема ISP, но при использовании DHCP я также получаю DNS-серверы моего ISP, добавленные в файл /etc/resolv.conf. Я хотел бы переопределить предоставленные провайдером DHCP-серверы с серверами OpenDNS, но я не добился большого успеха. Документация, которую я нашел для работы в сети Debian, предлагает установить опцию dns-nameservers следующим образом:

/ и т.д. / сеть / интерфейсы

iface eth0 inet dhcp
    dns-nameservers 208.67.222.222 208.67.220.220

Но /etc/resolv.conf продолжает заполняться серверами имен ISP. Если я редактирую /etc/resolv.conf и устанавливаю в этом файле серверы openDNS, он периодически стирается, предположительно, обновляя аренду DHCP.

Как мне заставить сервера имен OpenDNS залипать?

1 ответ1

4

Вероятно, наиболее правильный способ сделать то, что вы хотите, это взломать ваш dhclient.conf и включить соответствующий параметр supersede , который сообщит dhclient - программа, фактически делающая запрос DHCP и выполняющая запрошенные операции, игнорирует то, что получает от сервера и вместо этого используйте то, что находится в файле конфигурации. Что-то вроде:

interface "eth0" {
 supersede domain-name-servers 208.67.222.222, 208.67.220.220;
 }

Затем я бы прокомментировал в ваших /etc/network/interfaces что вы сделали это на тот случай, если вы измените его в будущем и ищете, почему он не изменится с OpenDNS.

В итоге я использовал тот факт, что dhclient выполняет сценарии перехвата, и вы можете переопределить функцию, выполняющую назначение IP-адреса, и сказать ей просто вернуться. Но вышесказанное проще и правильнее.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .