Как настроить сетевые интерфейсы ubuntu

Сетевые настройки

Содержание

Сетевые настройки

Ubuntu поставляется с набором графических утилит для настройки ваших сетевых устройств. Этот документ предназначен для серверных администраторов и сфокусирован на управлении вашей сетью через командную строку.

Интерфейсы Ethernet

Интерфейсы Ethernet идентифицируются системой с использованием имен ethX, где X является числовым значением. Первый интерфейс обычно обозначается как eth0, второй как eth1, и все последующие с увеличивающимися номерами по порядку.

Определение Ethernet интерфейсов

Для быстрого определения всех доступных сетевых интерфейсов вы можете использовать команду ifconfig как показано ниже.

Другое приложение, которое может помочь идентифицировать все доступные вашей системе сетевые интерфейсы, это команда lshw. В примере ниже lshw показывает один Ethernet интерфейс с логическим именем eth0 вместе с информацией по шине, деталями драйвера и всеми поддерживаемыми возможностями.

Логические имена интерфейсов Ethernet

Логические имена интерфейсов настраиваются в файле /etc/udev/rules.d/70-persistent-net.rules. Если вы захотите определить какой интерфейс получит определенное логическое имя, найдите строку по совпадению физического MAC адреса интерфейса и измените значение NAME=ethX на желаемое логическое имя. Перегрузите систему для применения изменений.

Читайте также:  Как настроить принтер xerox workcentre 3220

Настройки интерфейса Ethernet

ethtool — это программа, которая показывает и изменяет настройки сетевых карт, такие как автоопределение, скорость порта, режим дуплекса и функция Wake-on-LAN (пробуждение системы через сеть). Эта программа не устанавливается по умолчанию, но доступна к установке из репозиториев.

Ниже приведен пример как посмотреть возможности карты и настроить параметры интерфейса Ethernet.

Изменения, сделанные с использованием команды ethtool, временные и будут утеряны после перезагрузки. Если вы хотите сохранить настройки, просто добавьте требуемую команду ethtool в строку pre-up в файле /etc/network/interfaces.

Ниже приведен пример как интерфейс, определенный как eth0, может быть постоянно настроен на скорость порта 1000Мб/с в режиме полного дуплекса.

Адресация IP

Следующая секция описывает процесс настройки IP адреса вашей системы и шлюза по умолчанию, необходимые для подключения к локальной сети и интернету.

Временное назначение IP адреса

Для временной настройки сети вы можете использовать стандартные команды, такие как ip, ifconfig и route, которые присутствуют также и в других системах на базе GNU/Linux. Эти команды позволят изменить настройки, которые будут применены мгновенно, но они не будут постоянными и будут утеряны после перезагрузки.

Для временной настройки IP адреса вы можете использовать команду ifconfig следующим образом. Только замените IP адрес и маску подсети на соответствующие требованиям вашей сети.

Для проверки настройки IP адреса eth0 вы можете использовать команду ifconfig таким образом:

Для настройки шлюза по умолчанию вы можете использовать команду route следующим образом. Измените адрес шлюза по умолчанию на требуемый для вашей сети.

Для проверки настройки шлюза по умолчанию используйте команду route таким образом:

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

Динамическое присвоение IP адреса (клиент DHCP)

Добавив настройку интерфейса как показано выше, вы можете вручную включить интерфейс командой ifup, которая активизирует процесс DHCP через dhclient.

Для отключения интерфейса вручную вы можете воспользоваться командой ifdown, которая запустит процесс освобождения DHCP и остановки интерфейса.

Статическое присвоение IP адреса

Для настройки вашей системы под использование статического присвоения IP адреса добавьте метод static в секцию inet для соответствующего интерфейса в файле /etc/network/interfaces. Пример ниже предполагает, что вы настраиваете ваш первый интерфейс Ethernet, обозначенный как eth0. Измените значения адреса, маски сети и шлюза для соответствия требованиям вашей сети.

Добавив настройку интерфейса как показано выше, вы можете вручную включить интерфейс командой ifup.

Для отключения интерфейса вручную вы можете воспользоваться командой ifdown.

Интерфейс Loopback (обратной петли)

Интерфейс loopback определяется системой как lo и по умолчанию задает адрес 127.0.0.1. Он может быть выведен командой ifconfig.

По умолчанию может присутствовать две строки в /etc/network/interfaces отвечающих за автоматическую настройку интерфейса loopback. Рекомендуется оставить эти настройки без изменений пока не возникнет специфической причины для их изменения. Пример этих двух строк приведен ниже.

Разрешение имен

Под разрешением имени по отношению к IP сетям подразумевается процесс определения IP адреса по имени хоста, упрощающий идентификацию ресурса в сети. Данная секция раскрывает как правильно настроить вашу систему для разрешения имен с помощью DNS и статических записей имен хостов.

Настройка клиента DNS

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

Если вы попытаетесь проверить хост с именем server1, ваша система автоматически запросит DNS по их полным доменным именам (FQDN) в следующем порядке:

server1.example.com

server1.sales.example.com

server1.dev.example.com

Статические имена хостов

Далее приведен пример файла hosts, где ряд локальных серверов определены обычными именами хостов, алиасами и их эквивалентами полных имен (FQDN).

Настройка переключения сервиса имен

Последовательность, в которой ваша система выбирает метод разрешения имен по IP адресам управляется настроечным файлом переключателя сервиса имен (NSS) /etc/nsswitch.conf. Как отмечено в предыдущей секции, обычно статические имена хостов, определенные в системном файле /etc/hosts, имеют приоритет перед разрешением имен через DNS . Далее пример строки, отвечающей за этот порядок перебора имен хостов в файле /etc/nsswitch.conf.

files сперва пытается разрешить статическое имя хоста в /etc/hosts.

mdns4_minimal пытается разрешить имя с использованием параллельного (multicast) DNS .

[NOTFOUND=return] означает, что любой ответ notfound, предшествующий процессу mdns4_minimal, должен считаться значимым (авторитетным) и что система не будет пытаться продолжать искать ответ.

dns представляет собой наследуемый последовательный (legacy unicast) DNS запрос.

mdns4 представляет параллельный (multicast) DNS запрос.

Для изменения последовательности вышеупомянутых методов разрешения имен вы можете просто заменить строку hosts: на значение по вашему выбору. Например, если вы предпочитаете использовать последовательный DNS до параллельного DNS , вы можете изменить строку в /etc/nsswitch.conf как показано ниже:

Строительство мостов 🙂

Соединение нескольких интерфейсов — наиболее продвинутая настройка, но очень полезная во множестве сценариев. Один вариант — установка взаимодействия между несколькими сетевыми интерфейсами и затем использование защитного экрана (firewall) для фильтрования трафика между двумя сегментами сети. Другой сценарий — использование связывания на системе с одним интерфейсом для разрешения виртуальным машинам иметь прямой доступ во внешнюю сеть. Следующий пример раскрывает последний сценарий.

Перед настойкой взаимодействия вам потребуется установить пакет bridge-utils. Для установки пакета введите в терминале:

Далее настройте взаимодействие, отредактировав /etc/network/interfaces:

Теперь перезапустите сеть для разрешения взаимодействия интерфейсов:

Теперь новый мост между интерфейсами поднят и работает. Утилита brctl предоставит полезную информацию о статусе моста, определяет какие интерфейсы участвуют во взаимодействии и т.д. Смотрите man brctl для дополнительной информации.

Ссылки

Страница Ubuntu Wiki Network содержит ссылки на заметки по более продвинутым настройкам сети.

Страница resolvconf man содержит больше информации по resolvconf.

Страница interfaces man содержит детали по дополнительным опциям для /etc/network/interfaces.

Страница dhclient man содержит детали по большему количеству опций для настройки DHCP клиента.

Для дополнительной информации по настройке DNS клиента смотрите страницу resolver man. Также 6 глава руководства O’Reilly Администрирования сетей Linux является хорошим источником по разрешению имен и настройке сервиса имен.

Для дополнительной информации по сетевому связыванию смотрите страницу brctl man и страницу Net:Bridge от Linux Foundation.

Источник

Настройка сети в Ubuntu Server 16.04.4 LTS

В этой статье мы рассмотрим сетевые интерфейсы в Ubuntu Server, покажем настройку сети через файл конфигурации /etc/network/interfaces, а именно назначение статических настроек и получение их по DHCP. Пропишем адреса DNS-серверов, настроем hosts и рассмотрим указание временных настроек сети.

Просмотр сетевых интерфейсов.

Для начала проясним: Есть два состояния сетевой карты UP(задействована) и DOWN(не задействована).

Первым делом стоит посмотреть видна ли наша сетевая карта, смотреть будем командой ifconfig.(Рис.1) Вывод команды показывает только интерфейсы UP.

Рис.1 — Результат ввода команды Ifconfig.

И так что же мы видим:

  • ens33 — наша сетевая карта, с IP адресом 192.168.3.9.
  • lo — локальная петля, она у всех присутствует по умолчанию.

В дальнейшем я буду показывать примеры настройки на интерфейсе «ens33».

Но у вас может быть не так, к примеру отобразится только интерфейс «lo», тогда нам пригодится команда ifconfig -a.

Команда ifconfig -a покажет нам все интерфейсы и UP и DOWN. Вводим и видим что у нас есть не настроенный сетевой интерфейс «ens38».(Рис.2)

Рис.2 — Результат ввода команды Ifconfig -a.

Альтернативой команде ifconfig -a могут послужить две другие команды:

ip link show покажет вам даже состояние интерфейса «state UP mode» и «state DOWN mode».(Рис.3)

Рис.3 — Результат ввода команды ip link show.

lshw -C network | grep name — покажет вам имена всех интерфейсов исключая «lo».(Рис.4)

Рис.4 — Результат ввода команды lshw -C network | grep name.

Для того чтобы включить интерфейс используется команда ifup с указанием интерфейса ens38,

а, чтобы выключить ifdown.

Настройка сети через файл конфигурации.

Для настройки статического или динамического IP адреса нам надо отредактировать файл конфигурации сетевых интерфейсов — /etc/network/interfaces мы будем редактировать его с помощью текстового редактора nano.(Рис.5) Сразу скажу что для того чтобы сохранить документ в nano надо нажать «Ctrl+o», а чтобы закрыть «Ctrl+x».

Если вы авторизованы не под root, не забудьте добавить sudo и ввести пароль суперпользователя, а то не получится сохранить измененный файл interfaces.

Рис.5 — Команда для редактирования файла /etc/network/interfaces.

Получение настроек сети по DHCP.

Для получения настроек сети по DHCP, в файле /etc/network/interfaces достаточно указать всего две строки.(Рис.6)

Лично у меня они были написаны по умолчанию, так как сеть была настроена при установке. Пояснения в пункте Описание опций.

Если у вас не запущен DHCP клиент, то запустить его можно командой dclient с указанием интерфейса ens33.

Рис.6 — Файл конфигурации /etc/network/interfaces для получения настроек сети по DHCP.

Указание настроек сети вручную.

Пишем конфигурацию интерфейса для статичного IP адреса.(Рис.7)

Рис.7 — Файл конфигурации /etc/network/interfaces для указания настроек сети вручную..

Описание опций.

Рассмотрим описание опций, для того чтоб вы понимали что написано в пунктах Получение настроек по DHCP и Указание настроек сети вручную.

  • auto ens33 — означает что наш интерфейс «ens33» будет автоматически подключен при загрузке системы.
  • iface ens33 inet static — указывается семейство протоколов tcp/ip(inet или inet6) и способ получения адреса(static или dhcp).
  • address 192.168.3.209 — указываем IP адрес.
  • netmask 255.255.255.0 — указываем маску сети.
  • gateway 192.168.3.1 — указываем основной шлюз.
  • dns-nameservers 8.8.8.8 192.168.3.1 — указываем DNS сервера можно указать несколько через пробел.
  • dns-search itdeer.loc itdeer.ru — указываем DNS суффиксы, через пробел, допустим если у нас существует домен itdeer.ru то мы можем обратиться к компьютеру внесённому в этот домен, к примеру controller тогда ubuntu попытается разрешить имя controller.itdeer.ru.
  • dns-domain itdeer.ru — альтернатива dns-search, но указывается только один суффикс (название домена).

После редактирования файла /etc/network/interfaces, применить изменения можно двумя способами:

Первый — Перезагрузить систему.

Второй — Если же вы не хотите перезагружать систему, то нужно сначала отчистить конфигурацию интерфейса,

а после перезапустить службу сети.

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

Далее смотрите вывод команды ifconfig, изменения должны должны быть применены.

Указание DNS-серверов в файле /etc/resolv.conf.

IP адреса DNS-серверов можно указать, как в файле /etc/network/interfaces, так и в /etc/resolv.conf.[Как это делается в файле /etc/network/interfaces мы уже рассмотрели, так что здесь мы рассмотрим указание DNS-серверов в файле — /etc/resolv.conf]

Открываем resolv.conf в редакторе nano.(Рис.8)

Вписываем DNS сервер. (Можно указать сколько угодно DNS серверов.)

Если у вас нет файла resolv.conf то создайте его в каталоге /etc

Рис.8 — Содержимое файла resolv.conf.

Файл /etc/hosts.

Файл /etc/hosts содержит таблицы сопоставления DNS имен с IP адресами. В первую очередь ваш сервер будет обращаться к файлу hosts, а потом уже к DNS-серверу.

Записи 127.0.0.1 и 127.0.1.1 добавились автоматически при установке.

Лично для себя я отметил полезным внести в hosts запись этого ubuntuserver (IP адрес локальной сети — имя сервера). Теперь мы можем во всех конфигурационных файлах указывать DNS имя, а не IP адрес, а в случае необходимости за кротчайшее время изменить свой IP адрес поправив hosts и настройки интерфейса в /etc/network/interfaces.

Это просто для примера вам этого делать не обязательно.

Приступаю к редактированию(Рис.9):

Рис.9 — Содержимое файла hosts.

Проверю попинговав имена из hosts.(Рис.10)

Рис.10 — Пингуем имена из hosts.

Временное назначение ip адреса.

Честно говоря я не знаю для чего может пригодиться временное назначение сетевых настроек. Разве что допустим у вас какой-нибудь сервер который предназначен только для вашей локальной сети и вы вдруг решили быстренько обновить ПО через интернет на этом сервере, чтобы не ходить к шлюзу не раздавать интернет на нужный IP адрес итд. Вы можете обойтись парой команд.

Например, мы знаем что на 192.168.3.109 точно есть доступ в интернет, назначаем этот IP адрес нашему интерфейсу, так же нужно указать маску сети(Рис.11):

или командой с короткой записью маски сети.

Рис.11 — Указание временных настроек для сетевого интерфейса.

Интернет может не появиться, так как не указан шлюз по умолчанию. Прописываем его и пингуем гугловкие восьмёрки.(Рис.12)

Рис.12 — Указываем шлюз по умолчанию. Проверяем ping.

Правильно ли мы прописали наш шлюз по умолчанию можно посмотреть в таблице маршрутизации. Она выводится с помощью команды «route -n», Шлюз по умолчанию будет обозначен флагом UG.(Рис.13)

Рис.13 — Вывод таблицы маршрутизации.

На этом временная настройка закончена, помните что после перезагрузки сервера или отдельно службы networking, все временные настройки исчезнут.

Источник

Оцените статью