Рассмотрим конфигурирование сети в операционных системах по управлением Red Hat Enterprise Linux (RHEL) / CentOS / Fedora.
Коротко о дистрибутивах:
Red Hat Enterprise Linux (RHEL) - Операционная система на снове Linux выпускаемая компанией Red Hat для корпоративного использования и распространяется по годовой платной подписке. Состоит из хорошо провереных и отлаженных компонентов.
Fedora - Операционная система выпускаемая также компанией Red Hat, но в отличие от RHEL проект Fedora распространяется свободно, на Fedore тестируются новых разработки компании Red Hat, которые в дальнейшем уже испольуются для корпоративно дистрибутива RHEL.
CentOS - Операционная система основанная на исходном коде RHEL и по сути является ее клоном. Проект был создан и поддерживается интернациональной командой энтузиастов.
Основные конфигурационные файлы.
Сетевые настройка осуществляется методом правки конфигурационных файлов, т.к. Fedora и CentOS основаны на RHEL, то и сами файлы настроек и их расположение однинаковое, поэтому дальнейшие примеры настроек будут подходить ко всем трем дистрибутивам.
Файл настройки общей интформации /etc/sysconfig/network
В этом файле задается сетевое имя компьютера (HOSTNAME), дефолтный маршрут (GATEWAY), DNS-домен (DOMAINNAME).
Пример конфигурации в файле network для Red Hat / CentOS / Fedora.
[root@linux ~]# cat /etc/sysconfig/network NETWORKING=yes HOSTNAME=myhostname DOMAINNAME=domainname.com ## поле является необязательным. GATEWAY=192.168.1.1 ## default gateway для системы.
Скрипты настройки сетевых интерфейсов /etc/sysconfig/network-scripts/ifcfg-*
В этих файлах настраиваются основные данные для сетевых интерфейсов такие как ip адрес (IPADDR), сетевая маска (NETMASK), адрес сети (NETWORK), braodcast адрес (BROADCAST). Под звездочкой понимается имя сетевого интерфейса, например eth0, eth1, eth2, lo и т.п., зависит от количества установленных сетевых карт в системе.
Приведу пример файла cо статической настройкой сетевых параметров интерфейса eth0 для Red Hat / CentOS / Fedora.
[root@linux ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ## eth0 - имя интерфейса. BOOTPROTO=static HWADDR=FE:14:7E:68:FA:FB ## mac адрес интерфейса. IPADDR=192.168.1.10 NETMASK=255.255.255.0 NETWORK=192.168.1.0 BROADCAST=192.168.1.255 ONBOOT=yes ## параметр yes означает автоматически поднимать интерфейс eth0 при загрузке системы.
Пример файла с настройкой интерфейса eth1 на получаение сетевых адресов по протоколу DHCP для Red Hat / CentOS / Fedora.
[root@linux ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 BOOTPROTO=dhcp HWADDR=00:16:D7:AC:19:93 ONBOOT=yes
Также во всех система присуствует файл с настройками loopback интерфеса (lo).
[root@linux ~]# cat /etc/sysconfig/network-scripts/ifcfg-lo DEVICE=lo IPADDR=127.0.0.1 NETMASK=255.0.0.0 NETWORK=127.0.0.0 BROADCAST=127.255.255.255 ONBOOT=yes NAME=loopback ## имя интерфейса.
Файл настройки статических маршрутов /etc/sysconfig/static-routes
Все записи о статических маршрутах содержащемся в этом файле будут автоматически добавлены при загрузке системы в таблицу маршрутизации. В формае записи маршрута сначала идет интерфейс, можно указать any, что будет означать любой интерфейс, потом идет тип маршрута (host - адрес хоста или net - адрес сети) , сеть, маска данной сети, и шлюз.
[root@linux ~]# cat /etc/sysconfig/static-routes eth0 -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 any -net 192.168.2.0 netmask 255.255.255.0 gw 192.168.2.1
Скрипт для настройки статических маршрутов для конкретного интерфейса /etc/sysconfig/network-scripts/route-eth0
Если данного файла вы ненайдете в системе неотчаивайтеь просто создайте его и пропишити нужный вам маршрут.
[root@linux ~]# cat /etc/sysconfig/network-scripts/route-eth0 192.168.0.0/16 via 192.168.1.1
Файл /etc/hosts
Впоследнее время неактуален раньше использовался для соответствия списока ip-адресов и символьных имен.
Файл настроек DNS серверов /etc/resolv.conf
В этом файле перечисляется список ip адресов DNS серверов.
[root@linux ~]# cat /etc/resolv.conf nameserver 8.8.8.8 nameserver 8.8.4.4
Управление сетевыми интерфейсами.
Для просмотра состояния и конфигурации интерфейса существуют специальные команды.
[root@linux ~]# ifconfig [root@linux ~]# ip a
Посмотреть таблицу маршрутизации модно используя команду:
[root@linux ~]# netstat -r
В Red Hat Enterprise Linux (RHEL) / CentOS / Fedora существуют специальные сценарии для управления сетевыми интерфейсами.
Сценарии ifup и ifdown позволяют включить или отключить сетевой интерфейс. В качестве аргумента эти сценарии принемают имя интерфейса.
ifdown eth0 - отключит интерфейс. ifup eth0 - включить интерфейс.
Сценарий service network или /etc/init.d/network позволяют включить (start), отключить (stop) или перезапустить (restart) все интерфейсы разом.
service network stop service network restart /etc/init.d/network start
И на последок, функция маршрутизации между интерфейсами по умолчанию отключена, однако ее можно включить для этого надо добавить в файл /ete/sysctl.conf запись net.ipv4.ip_forward=1 и перезапустить систему.
На этом рассмотрение настройки сети в операционных системах Red Hat Enterprise Linux (RHEL) / CentOS / Fedora завершено.
Компонент комментариев CComment