Содержание статьи:
В этой статье мы рассмотрим сетевые интерфейсы в FreeBSD 11.1, покажем настройку сети через файл конфигурации /etc/rc.conf, а именно назначение статических настроек и получение их по DHCP. Пропишем адреса DNS-серверов, настроем hosts и рассмотрим указание временных настроек сети.
Просмотр сетевых интерфейсов.
Для начала проясним: Есть два состояния сетевой карты UP(задействована) и DOWN(не задействована).
Первым делом стоит посмотреть наши сетевые интерфейсы, смотреть будем командой ifconfig.(Рис.1) Вывод команды показывает все интерфейсы UP и DOWN.
ifconfig
ifconfig -a покажет вам тоже самое.
ifconfig -a
Вот тут есть некоторые отличия от ifconfig в Ubuntu server.(в Ubuntu server "ifconfig" показывает только интерфейсы UP, "ifconfig -a" показывает все интерфейсы и UP и DOWN)

И так что же мы видим:
- em0 - наша сетевая карта, с IP адресом 192.168.3.11.
- em1 - вторая сетевая карта, не настроенная.
- lo - локальная петля, она у всех присутствует по умолчанию.
Для того чтобы посмотреть интерфейсы только UP, используется команда ifconfig -u (Рис.2):
ifconfig -u
а для просмотра интерфейсов только DOWN, используется команда ifconfig -d (Рис.3):
ifconfig -d


В дальнейшем я буду показывать примеры настройки на интерфейсе "em0".
Для включения интерфейса используется команда ifconfig "НАЗВАНИЕ-ИНТЕРФЕЙСА" up.
ifconfig em0 up
Для выключения интерфейса используется команда ifconfig "НАЗВАНИЕ-ИНТЕРФЕЙСА" down.
ifconfig em0 down
"Поиграйтесь" с интерфейсом, если вы конечно же не подключены по ssh, и оставьте его в состоянии UP.
Настройка сети через файл конфигурации.
Для настройки статического или динамического IP адреса нам надо отредактировать файл конфигурации сетевых интерфейсов - /etc/rc.conf мы будем редактировать его с помощью текстового редактора vi.(Рис.4) Сразу скажу, для того чтобы редактировать в vi нужно нажать букву "i", а чтобы сохранить и закрыть документ надо нажать "Esc" ввести ":wq!" и нажать "Enter".
vi /etc/rc.conf

Получение настроек сети по DHCP.
Чтобы назначить получение настроек по DHCP, нужно вписать( или изменить существующую) строчку в файл /etc/rc.conf.(Рис.5)
ifconfig_НАЗВАНИЕ-ИНТЕРФЕЙСА="DHCP"
ifconfig_em0="DHCP"

Перезапускаем сетевую службу netif.(Рис.6)
/etc/rc.d/netif restart

Смотрим активные сетевые интерфейсы, видим, полученный по DHCP, IP адрес интерфейса em0 - 192.168.3.6(Рис.7)
ifconfig -u
Проверяем выход в интернет пингуем гугловские восьмёрки.
ping 8.8.8.8

Пинги идут. Всё отлично!
Указание настроек сети вручную.
Чтобы назначить статичный адрес для нашей Freebsd нужно в файл /etc/rc.conf вписать две строки(Рис.8)
ifconfig_НАЗВАНИЕ-ИНТЕРФЕЙСА="inet IP-АДРЕС-FREEBSD netmask МАСКА-СЕТИ"
defaultrouter="IP-АДРЕС-ШЛЮЗА"
ifconfig_em0="inet 192.168.3.11 netmask 255.255.255.0" defaultrouter="192.168.3.1"

Перезапускаем сетевую службу.
/etc/rc.d/netif restart
Проверяем активные интерфейсы
ifconfig -u
Проверяем выход в интернет пингуем гугловские восьмёрки.
ping 8.8.8.8
Настройка DNS.
IP адреса DNS серверов хранятся в файле /etc/resolv.conf(Рис.9)
Открываем resolv.conf в редакторе vi.
vi /etc/resolv.conf
Вписываем IP адрес DNS сервера. (Можно указать сколько угодно адресов.)
nameserver 192.168.3.1 nameserver 8.8.8.8 nameserver 8.8.4.4
Если у вас нет файла resolv.conf то создайте его в каталоге /etc
touch /etc/resolv.conf

Файл /etc/hosts.
Файл /etc/hosts содержит таблицы сопоставления DNS имен с IP адресами. В первую очередь ваш сервер будет обращаться к файлу hosts, а потом уже к DNS-серверу.
Записи 127.0.0.1 добавился автоматически при установке.
Лично для себя я отметил полезным внести в hosts запись этого freebsd (IP адрес локальной сети - имя сервера). Теперь мы можем во всех конфигурационных файлах указывать DNS имя, а не IP адрес, а в случае необходимости за кротчайшее время изменить свой IP адрес поправив hosts и настройки интерфейса в /etc/rc.conf.
Это просто для примера вам этого делать не обязательно.
Приступаю к редактированию(Рис.10):
vi /etc/hosts
Вписываю:
192.168.3.11 freebsd.itdeer.loc

Проверю попинговав имена из hosts.(Рис.11)
ping localhost
ping freebsd.itdeer.loc

Временное назначение ip адреса.
Честно говоря я не знаю для чего может пригодиться временное назначение сетевых настроек. Разве что допустим у вас какой-нибудь сервер который предназначен только для вашей локальной сети и вы вдруг решили быстренько обновить ПО через интернет на этом сервере, чтобы не ходить к шлюзу не раздавать интернет на нужный IP адрес итд. Вы можете обойтись парой команд.
Например, мы знаем что на 192.168.3.109 точно есть доступ в интернет, назначаем этот IP адрес нашему интерфейсу, так же нужно указать маску сети(Рис.12):
ifconfig em0 192.168.3.109 netmask 255.255.255.0
или командой с короткой записью маски сети.
ifconfig em0 192.168.3.109/24

Интернет может не появиться, так как не указан шлюз по умолчанию. Прописываем его и пингуем гугловкие восьмёрки.(Рис.13)
route add default 192.168.3.1
ping 8.8.8.8

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

Если вы где-то ошиблись в написании или у вас указан другой шлюз, то можно удалить шлюз по умолчанию.
route del default
На этом временная настройка закончена, помните что после перезагрузки сервера или отдельно службы networking, все временные настройки исчезнут.
Добавляем маршрут в сеть 192.168.0.0/16 (Маска 255.255.0.0) через основной шлюз(gateway) 192.168.3.1/24
route add 192.168.0.0/16 192.168.3.1
Вариант добавления маршрута с указанием полной маски.
route add -net 192.168.0.0 -netmask 255.255.0.0 192.168.3.1
Переименовываем интерфейс em0 в wan0.
Для удобства некоторые админы переименовывают интерфейсы, чтобы сразу видеть для чего предназначен интерфейс. Допустим у нас шлюз с двумя сетевыми интерфейсами em0(интернет) и em1(локальная сеть) и работать с такими названиями неудобно, так как имея большое количество интерфейсов можно запутаться. Гораздо удобнее работать с интерфейсами wan0 и lan1.
Мы покажем пример переименования интерфейса em0 в wan0 в файле /etc/rc.conf.(Рис.15)
vi /etc/rc.conf
Строку:
ifconfig_em0="inet 192.168.3.11 netmask 255.255.255.0"
Заменяем двумя строками:
ifconfig_em0_name="wan0" ifconfig_wan0="inet 192.168.3.11 netmask 255.255.255.0"

Не забываем перезапустить сетевую службу:
/etc/rc.d/netif restart
Проверю, введу команду ifconfig -u. Видим наш wan0 с нужным IP адресом.(Рис.16)
ifconfig -u

У меня всё!
Была ли вам полезна статья? Есть возможность поддержать проект.
Комментарии