Как мне настроить мой статический DNS в интерфейсах?

Я использую Ubuntu 12.04.

Мой /etc/network/interfaces файл состоит из:

# The loopback network interface  
auto lo  
iface lo inet loopback  


# The primary network interface  
auto eth0 
iface eth0 inet static  
address 192.168.1.58  
gateway 192.168.1.1
network 192.168.1.0  
broadcast 192.168.1.255
dns-nameservers 66.212.63.228 66.212.48.10  

Я выполнил команду: /etc/init.d/networking restart

Ответил:

*Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces  
*Reconfiguring network interfaces...  
RTNETLINK answers: File exists  
Failed to bring up eth0  
[ OK ]  

Далее я запустил ping google.com и получил:

ping: unknown host google.com

Я не уверен, обновились ли мои интерфейсы. Как правильно настроить мою сеть с моими статическими DNS-адресами?

61
задан 30 May 2012 в 16:18

13 ответов

Поскольку спрашивающий дает содержание своего /etc/network/interfaces, я делаю вывод, что он использует ifup для настройки интерфейсов. Но так как он может фактически использовать NetworkManager, я также буду обсуждать это.

Если вы используете ifup, тогда настройки DNS идут в /etc/network/interfaces. Для каждого интерфейса вы добавляете dns-* опций, соответствующих серверу (ам) имен, доступному через этот интерфейс. Например, если сервер имен по адресу 1.2.3.4 доступен через интерфейс eth0, добавьте dns-nameservers 1.2.3.4 в раздел iface eth0.

Если вы используете NetworkManager, настройки вводятся в Редакторе подключений (индикатор сети | Редактировать подключения ...) на вкладке Настройки IPv4.

Выполнение /etc/init.d/networking restart для перенастройки интерфейсов не рекомендуется. Если вы используете ifup, то сначала ifdown каждый активный сетевой интерфейс, затем ifup каждый интерфейс. Если вы используете NetworkManager, то сначала отключите сеть с помощью индикатора (вверху рабочего стола); затем откройте терминал и запустите

sudo /etc/init.d/network-manager restart

, а затем включите сеть с помощью индикатора.

Или вы можете просто перезагрузиться.

Относительно того, что /etc/init.d/networking restart привело к

RTNETLINK answers: File exists
Failed to bring up eth0  

Это означает, что ifupdown считает, что eth0 уже вышло. Используйте ifdown --force eth0, чтобы заставить ifupdown перестать верить, что он уже настроил интерфейс.

Что касается «устаревшего» сообщения, это сообщение больше не печатается в Ubuntu 12.10, но вы все равно должны заметить, что initscripts «находятся на выходе». Чтобы перезапустить службу foo, используйте service foo restart или restart foo. Также обратите внимание, что если вы хотите перенастроить свои интерфейсы, лучше отключить их один за другим, чем полагаться на перезапуск «сети».

0
ответ дан 30 May 2012 в 16:18

Если ничего из вышеперечисленного не работает, имейте в виду, что Ubuntu добавляет файл tail в файл resolv.conf, который он генерирует.

Попробуйте:

sudo nano /etc/resolvconf/resolv.conf.d/tail

, который откроет пустой файл resolv.conf.d в текстовом редакторе nano. Вам нужно будет поместить адрес DNS-сервера в первую строку этого файла и не забывать завершать строку возвратом каретки (нажмите ввод), как показано ниже:

nameserver 10.20.1.2

Редактирование хвостового файла вместо фактического файла resolv.conf предотвратит потерю ваших изменений при перезагрузке системы.

Вам нужно будет запустить sudo resolvconf -u, чтобы активировать изменение. После этого вы сможете пинговать google.com. Удачи!

0
ответ дан 30 May 2012 в 16:18

Версия командной строки:

Вы должны добавить свой сервер (ы) имен в файл /etc/resolvconf/resolv.conf.d/base следующим образом:

nameserver 66.212.63.228 
nameserver 66.212.48.10
0
ответ дан 30 May 2012 в 16:18

Все ответы, которые относятся к / etc / network / interfaces неправильно, указывают dns-nameservers, а не dns-nameserver - ниже должно работать:

auto wlan0
iface wlan0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameserver 8.8.8.8
dns-nameserver 8.8.4.4
dns-search something.network.com

(протестировано в Ubuntu 15.04)

0
ответ дан 30 May 2012 в 16:18

Самым простым способом настройки DNS-серверов является использование NetworkManager

Под IPv4 введите свой DNS-сервер (ы)

enter image description here

0
ответ дан 30 May 2012 в 16:18

Это сработало для меня

sudo vi /etc/resolvconf/resolv.conf.d/base

и добавить:

nameserver <add your router ip>

Выполнить:

sudo resolvconf -u

Я использую установку ядра сервера Ubuntu.

0
ответ дан 30 May 2012 в 16:18

По некоторым причинам dns-nameservers оператор ничего не делает в моем случае. И другие ответы не книгой, как они обходят dnsmasq поскольку это используется в Ubuntu.

Сделать правильно это, редактирование /etc/dnsmasq.conf

Добавьте свои серверы имен к нижней части файла:

server=8.8.8.8
server=8.8.4.4

Перезапустите dnsmasq для использования новых настроек: sudo service dnsmasq restart

Кредит: https://unix.stackexchange.com/a/163506/187949

1
ответ дан 30 May 2012 в 16:18

Вы можете настроить этот интерфейс и в другом файле, так как у вас больше шлюзов.

Подробности здесь здесь .

0
ответ дан 30 May 2012 в 16:18

Примечание: осторожное использование без прямого доступа на машине, это разорвет соединение ...

Я использую

sudo ifdown eth0

, затем

sudo ifup eth0

Он сбрасывает и освобождает все ...

Если он сталкивается с ошибками, связанными с конфигурацией, вы можете использовать:

sudo ifdown eth0 --force
0
ответ дан 30 May 2012 в 16:18

Вам не хватает спецификации подсети в файле интерфейсов.

Добавьте маску сети 255.255.255.0 к /etc/network/interfaces ниже линии сети.

0
ответ дан 30 May 2012 в 16:18

У меня была эта проблема. Я думал, что схожу с ума. Каждый раз, когда я редактировал /etc/resolv.conf, он удалял мой конфиг. Оказывается, какой-то общий сумасшедший распространил debian с сетевым менеджером, который перезаписывает все мои сетевые настройки.

Вот как я это исправил:

1) sudo apt-get purge network-manager

Это избавляет от этого ужасного нового инструмента, который мешает всем конфигам работать должным образом.

2) Отредактируйте файл /etc/network/interfaces:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

auto enp0s25
iface enp0s25 inet static
        address 192.168.1.2
        netmask 255.255.255.0
        gateway 192.168.1.1

3) Отредактируйте /etc/resolv.conf:

nameserver 8.8.8.8
nameserver 8.8.4.4

4) Перезагрузитесь.

Поздравляю, теперь у вас есть нормальные конфиги, которые снова работают.

0
ответ дан 30 May 2012 в 16:18

Мне удалось обойти эту проблему на установке безголового сервера без головок, добавив

nameserver 8.8.8.8

... после соответствующего интерфейса в / etc / network / interfaces:

auto wlan0
iface wlan0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8
dns-nameservers 8.8.4.4
[ 114] Надеюсь, это поможет более поздним пользователям!

0
ответ дан 30 May 2012 в 16:18

В большинстве дистрибутивов вы можете настроить свой DNS-СЕРВЕР по пути

nano /etc/resolv.conf

и настроить внутри например [мой выглядит следующим образом]:

nameserver 192.168.43.1
nameserver 8.8.8.8
nameserver 8.8.8.4
0
ответ дан 5 January 2021 в 22:52

Другие вопросы по тегам:

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