Ubuntu поставляется с несолькими графическими инструментами для настройки сетевых устройств. Этот документ рассчитан на продвинутых пользователей и фокусируется на управлении сетью с помощью командной строки.
Большая часть настроек ethernet сконцентрирована в одном файле: /etc/network/interfaces
. Если у вас нет сетевых устройств, тогда только loopback-интерфейс будет представлен в этом файле, и файл будет выглядеть примерно вот так:
#Этот файл описывает сетевые устройства присутствующие в системе # и способы их активации. Для более подробной информации см. interfaces(5). # The loopback interface auto lo iface lo inet loopback address 127.0.0.1 netmask 255.0.0.0
Если в вашей стстеме одно ethernet-устройство, которое получает настроечные данные с сервера DHCP, и оно должно подключаться автоматически при загрузке системы, то для его настройки понадобится всего лишь две строчки дополнительно:
auto eth0 iface eth0 inet dhcp boot
Первая строка говорит о том, что устройство eth0 должно включатся автоматически при загрузке. Вторая строка определяет, что интерфейс («iface») eth0 должен работать в пространстве адресов IPv4 (замените «inet» на «inet6» для устройств с адресами IPv6) и получает настроечные данные с сервера DHCP. Подразумевая, что ваша сеть и сервер DHCP настроены и работают правильно, настройки сети данного компьютера не требуют дальнейшей настройки для работы в сети. Сервер DHCP предоставит адрес основного шлюза (реализованного с помощью команды route), IP-адрес устройства (реализованного с помощью команды ifconfig) и адреса DNS серверов, используемых в сети (реализовано в файле /etc/resolv.conf
)
Для настройки вашего устройства ethernet на использование статического IP-адреса и собственных настроек, необходимо иметь больше информации. Допустим, вы хотите присвоить IP-адрес 192.168.0.2 устройству eth1, со стандартной маской сети 255.255.255.0. IP-адрес вашего основного шлюза 192.168.0.1. Тогда ваш файл /etc/network/interfaces
будет подобен следующему:
iface eth1 inet static address 192.168.0.2 netmask 255.255.255.0 gateway 192.168.0.1
В этом случае вам также необходимо определить вручную ваши серверы DNS в файле /etc/resolv.conf
, который будет выглядеть примерно так: which should look something like this:
search mydomain.com nameserver 192.168.0.1 nameserver 4.2.2.2
Директива search будет добавлять mydomain.com к запросам имени хоста при попытках разрешить имя в вашей сети. Например, если домен вашей сети mydomain.com и вы попытаетесь послать эхо-запрос хосту «mybox», запрос DNS на разрешение имен будет модифицирован к виду «mybox.mydomain.com». Инструкции nameserver определяют серверы DNS, используемые для разрешения имен хостов в IP-адреса. Если вы используете собственный сервер имен, укажите его здесь. В противном случае, запросите у вашего провайдера услуг Интернет (Internet Service Provider, ISP) адреса основного и вспомогательного серверов DNS, и опишите их в файле /etc/resolv.conf
как показано выше.
Существует большое количество возможных вариантов настроек сети, включая модемные интерфейсы PPP, работу в сети по протоколу IPv6, VPN устройства и т.п. Более полная информация и описание поддерживаемых возможностей дано в руководстве man 5 interfaces. Помните, что файл /etc/network/interfaces
используется скриптами ifup/ifdown в для предоставления схемы настройек более высокого уровня, чем может использоваться в других дистрибутивах Линукс, а также, что традиционные низкоуровневые утилиты такие как ifconfig, route и dhclient также доступны вам для специально подобранных настроек.
Данный раздел объясняет как настроить использование существующих серверов имен (name server) при разрешении IP-адресов в имена хостов и обратно. Здесь не объясняется, как настроить систему для работы в качестве сервера имен.
Для управления списком DNS, вы можете добавлять, изменять или удалять имена DNS в файле /etc/resolv.conf
. Содержимое файла-примера представлено ниже:
search com nameserver 204.11.126.131 nameserver 64.125.134.133 nameserver 64.125.134.132 nameserver 208.185.179.218
Ключевое слово search определяет строку, которая будет добавляться к неполным именам хостов. В нашем примере это строка com. То есть, если мы выполним комманду: ping ubuntu, она будет интерпретирована как ping ubuntu.com.
Ключевое слово nameserver определяет IP-адрес сервера имен. Этот адрес будет использован, при разрешении заданного IP-адреса или имени хоста. Данный файл может содержать несколько записей с описанием серверов имен. Серверы имен будут использоваться сетевыми запросами в той же последовательности, как они указаны в файле.
Если сервера имен DNS доставляются автоматически через DHCP или PPPOE (от вашего ISP). не добавляйте записи для серверов имен в этот файл. Он будет обновлен автоматически.
The changes you do in /etc/resolv.conf
will be erased when you reboot your machine. If you want to make this change permanent, you should install resolvconf package and update the DNS information in /etc/resolvconf/resolv.conf.d/base
file provided by that package.
Для управления хостами, вы можете добавлять, изменять, удалять хосты в файле /etc/hosts
. Этот файл содержит IP-адреса и соответствующие им имена хостов. Когда ваша система пытается разрешить название хоста в IP-адрес, сначала происходит обращение к файлу /etc/hosts
и лишь потом используются серверы имен. Если IP-адрес содержится в файле /etc/hosts
, серверы имен не используются. Такое поведение может быть изменено настройками в файле /etc/nsswitch.conf
, на ваш собственный риск.
Если в вашей сети есть компьютеры, чьи IP-адреса не прописаны в DNS, мы рекомендуем вам добавить их в файл /etc/hosts
.