Как настроить маршрутизацию centos

Содержание
  1. Настройка TCP/IP в CentOS
  2. проверка наличия драйверов сетевой карты
  3. просмотр текущей конфигурации сети
  4. динамическая настройка параметров сети
  5. включение / отключение сетевого интерфейса
  6. настройка маршрутизации
  7. добавление маршрутов
  8. просмотр таблицы маршрутов
  9. удаление маршрутов
  10. настройка DNS
  11. настройка параметров сети с помощью файлов конфигураций
  12. расположение конфигурационных файлов
  13. структура конфигурационных файлов
  14. ifcfg-ethX
  15. resolv.conf
  16. route-ethX
  17. перезагрузка сетевого сервиса
  18. примеры файлов
  19. Управление сетевыми маршрутами в CentOS 7
  20. Посмотреть маршруты (route print)
  21. Добавить или удалить статический маршрут
  22. Разово (до перезагрузки сетевой службы или компьютера)
  23. Постоянно (permanently)
  24. Поменять маршрут
  25. Настройка сетевых маршрутов в Linux (CentOS)
  26. Просмотр таблицы маршрутизации в Linux
  27. Как добавить или удалить статический маршрут?
  28. Изменить маршрут в Linux
  29. Изменить маршрут по умолчанию
  30. Настройка сетевых маршрутов в CentOS
  31. Просмотр таблицы маршрутизации в Linux
  32. Как добавить или удалить статический маршрут?
  33. Изменить маршрут в Linux
  34. Изменить маршрут по умолчанию

Настройка TCP/IP в CentOS

проверка наличия драйверов сетевой карты

Чтобы узнать, загружены ли драйверы сетевой карты, запустите команду:

dmesg | grep eth

Если в результате Вы увидите какие-либо сообщения, содержащие текст ethX, то значит, драйверы установлены успешно, и необходимо только поднять/настроить интерфейс сетевой карты.

просмотр текущей конфигурации сети

Для того, чтобы узнать текущие параметры сети в CentOS, есть очень простой способ — запустите команду:

Если среди отображаемых интерфейсов не присутствуют интерфейсы ethX (eth0, eth1, . ), то либо не загружены драйвера сетевой карты (она не опознана), либо не поднят сетевой интерфейс.

динамическая настройка параметров сети

Обратите внимание: в данном случае настройки сети будут применяться сразу же, но они не сохранятся после перезагрузки!

Для настройки IP адреса и маски подсети наберите в командной строке:
ifconfig -a netmask
например:
ifconfig -a eth0 192.168.1.15 netmask 255.255.255.0

для настройки шлюза по умолчанию укажите в командной строке
route add default gw
например:
route add default gw 192.168.1.1

включение / отключение сетевого интерфейса

После того, как Вы настроили сеть, она по-прежнему может бьть недоступна. Причиной может быть то, что не включен (т.е. не «поднят») сетевой интерфейс.

Включить сетевой интерфейс можно командой:
ifconfig up
например:
ifconfig eth0 up

Отключить сетевой интерфейс не менее просто:
ifconfig down
например:
ifconfig eth0 down

настройка маршрутизации

добавление маршрутов

Маршруты добавляются командой:
route add -net / gw
например:
route add -net 192.168.5.0/24 gw 10.0.1.1

просмотр таблицы маршрутов

Для просмотра таблицы маршрутизации запустите команду:
netstat -rn
или
route -n

удаление маршрутов

Маршруты удаляются командой:
route delete -net /
например:
route delete -net 192.168.5.0/24

настройка DNS

возможна только через файл /etc/resolv.conf (см. ниже)

настройка параметров сети с помощью файлов конфигураций

Если Вы хотите настроить сеть таким образом, чтобы указанные параметры сети сохранялись и после перезагрузки системы, Вам необходимо изменить конфигурационные файлы.

расположение конфигурационных файлов

Настройка параметров сети (IP адрес, маска сети, шлюз, параметры DNS) производится в файлах ifcfg-ethX, которые находятся в папке /etc/sysconfig/network-scripts.
Параметры DNS описываются также в файле /etc/resolv.conf.
Маршруты (из таблицы маршрутизации) хранятся в файлах /etc/sysconfig/network-scripts/route-ethX.

структура конфигурационных файлов

ifcfg-ethX

Файлы находятся в папке /etc/sysconfig/network-scripts.

Название параметра Описание параметра Возможные значения Пример использования
DEVICE наименование интерфейса eth0
eth1
.
device=eth0
device=eth1
BOOTPROTO способ назначения IP dhcp
none
static
(пустое значение)
bootproto=dhcp
bootproto=
bootproto=static
bootproto=none
HWADDR MAC адрес HWADDR=»00:00:00:00:00:00″
NM_CONTROLLED должен ли интерфейс управляться NetworkManager «yes»
«no»
NM_CONTROLLED=»yes»
ONBOOT Должен ли этот интерфейс «подниматься» при запуске сетевой службы «yes»
«no»
ONBOOT=»yes»
TYPE тип интерфейса «Ethernet» TYPE=»Ethernet»
UUID UUID=»ffffffff-ffff-ffff-ffff-ffffffffffff»
IPADDR IP адрес интерфейса IPADDR=192.168.1.3
NETMASK маска подсети интерфейса NETMASK=255.255.255.0
GATEWAY шлюз интерфейса GATEWAY=192.168.1.1
DNS1 1-й DNS сервер интерфейса DNS1=192.168.1.1
DNS2 2-й DNS сервер интерфейса DNS2=192.168.1.2
DOMAIN текущий домен DOMAIN=MYDOMAIN.LOCAL
Читайте также:  Почему не работает gps pro

resolv.conf

Этот файл находится в папке /etc.

Название параметра Описание параметра Возможные значения Пример использования
nameserver адрес DNS сервера. Таких записей может быть несколько (не более 3-х) nameserver 192.168.1.1
nameserver 192.168.1.2
domain имя локального домена (?) domain mydom.local
search подставляемое имя домена, если адрес задан не полностью search mydom.local

route-ethX

Файлы находятся в папке /etc/sysconfig/network-scripts.

Формат файла:
/ via dev

например:
192.168.5.50/24 via 192.168.0.2 dev eth0
или
5.12.35.141/16 via 192.168.1.3 dev eth1

Шлюз по умолчанию задается в файлах ifcfg-ethX. Можно также указать шлюз по умолчанию, например, следующим образом:
default via 192.168.0.1 dev eth0

В файле route-eth0 нужно указывать все маршруты с dev eth0, а в файле route-eth1 — соответственно, все маршруты с dev eth1.

перезагрузка сетевого сервиса

Перезагрузить сетевой сервис (при этом перезагружаются все сетевые интерфейсы) в CentOS можно командой:
service network restart
При этом перезапускаются все конфигурационные файлы из каталога /etc/sysconfig/network-scripts.

примеры файлов

Пример файла /etc/sysconfig/network-scripts/ifcfg-eth0:

Пример файла /etc/sysconfig/network-scripts/route-eth0:

Источник

Управление сетевыми маршрутами в CentOS 7

Будет справедливо сказать, что статья имеет отношение не только к CentOS 7, но и Red Hat, Fedora и любому дистрибутиву Linux с установленной утилитой ip.

Посмотреть маршруты (route print)

default via 192.168.0.1 dev ens32 proto static metric 100
10.10.1.0/24 via 10.10.0.1 dev ens35 proto static metric 100

* где default via 192.168.0.1 dev ens32 означает шлюз по умолчанию через 192.168.0.1 и адаптер ens32; 10.10.1.0/24 via 10.10.0.1 dev ens35 — статический маршрут в сеть 10.10.1.0/24 через узел 10.10.0.1, который доступен с адаптера ens35.

Также можно посмотреть, через какой шлюз пойдет маршрут до конкретного IP-адреса:

ip route get 192.168.15.77

Добавить или удалить статический маршрут

Разово (до перезагрузки сетевой службы или компьютера)

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

ip route add 192.168.1.0/24 via 192.168.0.1

* в данном примере будет добавлен маршрут в сеть 192.168.1.0/24 через шлюз 192.168.0.1

Для удаления маршрута:

ip route del 192.168.1.0/24

* удалит сетевой путь в подсеть 192.168.1.0

Постоянно (permanently)

Для начала нужно знать, для какого сетевого адаптера добавлять маршрут. Список сетевых интерфейсов с адресами в CentOS можно посмотреть следующей командой:

Например, для ethernet-адаптера eth0 нужно открыть на редактирование следующий файл

и превести его к следующему виду:

192.168.1.0/24 via 192.168.0.1

* как и в предыдущем примере, маршрут прописан в сеть 192.168.1.0/24 через шлюз 192.168.0.1. Можно прописать несколько маршрутов (для каждого с новой строки).

Чтобы измененя вступили в силу, необходимо перезапустить сетевые службы

systemctl restart network

Поменять маршрут

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

ip route replace default via 192.168.1.1

Читайте также:  Почему не работает лампочка ручника

ip route change default via 192.168.1.1

Поменять статический маршрут в другую сеть:

ip route replace 192.168.1.0/24 via 192.168.0.1

Источник

Настройка сетевых маршрутов в Linux (CentOS)

В этой статье мы рассмотрим особенности настройки маршрутизации и управления маршрутами в Linux (просмотр таблицы маршрутизации, добавление/удаление статических маршрутов и т.д.) на примере CentOS с помощью утилиты ip. Статья применима и для любого другого дистрибутива Linux с утилитой ip (Red Hat, Fedora и т.д.).

Просмотр таблицы маршрутизации в Linux

Чтобы вывести текущую таблицу маршрутизации в Linux выполните команду:

  • default via 192.168.1.1 dev enp0s3 – шлюз по умолчанию, в данном примере работающий через интерфейс enp0s3. Если для target адреса в таблице маршрутизации отсутствует маршрут, то такой пакет отправляется через данный шлюз (маршрут по умолчанию)
  • 192.168.1.0/24 dev enp0s3 proto kernel scope link src 192.168.1.201 — статический маршрут для сети 192.168.1.0/24 через адрес 192.168.1.201, который прописан на интерфейсе
  • proto kernel – маршрут создан ядром ( proto static – маршрут добавлен администратором)
  • metric – приоритет маршрута (чем меньше значение metric, тем выше приоритет). При наличии двух маршрутов с одинаковой метрикой (не стоит так делать!), ядро начинает выбирать маршруты случайным образом.

Чтобы узнать через какой интерфейс (шлюз) должен маршрутизироваться трафик к определенному IP адресу используется команда:

# ip route get 192.168.2.45

Как добавить или удалить статический маршрут?

Чтобы добавить новый маршрут к определенной IP подсети в таблицу маршрутизации Linux, нужно выполнить следующую команду:

# ip route add 192.168.0.0/24 via 192.168.1.1

Таким образом, мы добавим маршрут для IP сети 192.168.0.0/24 через шлюз 192.168.1.1.

Также можно добавить отдельный маршрут для одного IP адреса (хоста):

# ip route add 192.168.1.0 via 192.168.1.1

Можно сделать аналог null route маршрута в Cisco (ip route null0), пакеты в такую сеть удаляются по причине No route to host:

# ip route add blackhole 10.1.20.0/24

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

Чтобы удалить созданный вручную маршрут, выполните:

# ip route del 192.168.0.0/24

Как видите, маршрут удален из таблицы маршрутизации.

Чтобы добавить постоянный маршрут, нужно создать файл для этого маршрута, либо добавить правило в файл rc.local (выполняется при загрузке сервера).

Чтобы добавить постоянный (статический) маршрут, нужно знать имя сетевого интерфейса, который будет использоваться для маршрутизации. Узнать имя сетевого интерфейса можно командой:

В моем случае, интерфейс enp0s3.

Далее открываем следующий файл:

И добавляем туда строку с маршрутом:

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

# service network restart

После перещаауска сетевого сервиса, в таблице маршрутизации появился статический маршрут.

Также можно добавить команду добавления нового маршрута в файл rc.local, чтобы он автоматически добавлялся при загрузке сервера. Откройте файл:

И укажите команду добавления маршрута:

# ip route add 192.168.0.0/24 via 192.168.1.1

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

Изменить маршрут в Linux

Чтобы изменить уже существующий маршрут, можно использовать команду ip route replace:

# ip route replace 192.168.0.0/24 via 192.168.1.1

Чтобы сбросить все временные маршруты в таблице маршрутизации, просто перезапустите сетевой сервис:

Читайте также:  Не работает датчик уровня топлива ваз 2112 европанель

]# service network restart

Изменить маршрут по умолчанию

Вы можете удалить маршрут по-умолчаню с помощью команды ip route del:

# ip route del default via 192.168.1.1 dev enp0s3

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

# ip route add default via 192.168.1.2 (маршрут через IP адрес шлюза)

# ip route add default via enp0s3 (маршрут через имя устройства)

Чтобы изменить параметры маршрута по умолчанию, используется команда:

Источник

Настройка сетевых маршрутов в CentOS

Для управления маршрутизацией в Linux предпочтительно исопльзовать утилиту ip , а не route . Команда route не позволяет настраивать расширенные возможности маршрутизации (например, политики маршрутизации), и не покажет специальные настройки маршрутизации, если они уже сделаны через ip.

Просмотр таблицы маршрутизации в Linux

Чтобы вывести текущую таблицу маршрутизации в Linux выполните команду:

  • default via 192.168.40.1 dev ens192 – шлюз по умолчанию, в данном примере работающий через интерфейс enp0s3. Если для target адреса в таблице маршрутизации отсутствует маршрут, то такой пакет отправляется через данный шлюз (маршрут по умолчанию)
  • 192.168.40.0/24 dev ens192 proto kernel scope link src 192.168.40.197 — статический маршрут для сети 192.168.40.0/24 через адрес 192.168.40.197, который прописан на интерфейсе
  • proto kernel – маршрут создан ядром ( proto static – маршрут добавлен администратором)
  • metric – приоритет маршрута (чем меньше значение metric, тем выше приоритет). При наличии двух маршрутов с одинаковой метрикой (не стоит так делать!), ядро начинает выбирать маршруты случайным образом.

Чтобы узнать через какой интерфейс (шлюз) должен маршрутизироваться трафик к определенному IP адресу используется команда:

Как добавить или удалить статический маршрут?

Чтобы добавить новый маршрут к определенной IP подсети в таблицу маршрутизации Linux, нужно выполнить следующую команду:

Таким образом, мы добавим маршрут для IP сети 192.168.0.0/24 через шлюз 192.168.40.1

Также можно добавить отдельный маршрут для одного IP адреса (хоста):

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

Чтобы удалить созданный вручную маршрут, выполните:

Чтобы добавить постоянный маршрут, нужно создать файл для этого маршрута, либо добавить правило в файл rc.local (выполняется при загрузке сервера).

Чтобы добавить постоянный (статический) маршрут, нужно знать имя сетевого интерфейса, который будет использоваться для маршрутизации. Узнать имя сетевого интерфейса можно командой:

В моем случае, интерфейс ens192

Далее открываем следующий файл:

И добавляем туда строку с маршрутом:

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

После перещаауска сетевого сервиса, в таблице маршрутизации появился статический маршрут.

Также можно добавить команду добавления нового маршрута в файл rc.local, чтобы он автоматически добавлялся при загрузке сервера. Откройте файл:

И укажите команду добавления маршрута:

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

Изменить маршрут в Linux

Чтобы изменить уже существующий маршрут, можно использовать команду ip route replace:

Чтобы сбросить все временные маршруты в таблице маршрутизации, просто перезапустите сетевой сервис:

Изменить маршрут по умолчанию

Вы можете удалить маршрут по-умолчаню с помощью команды ip route del:

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

Чтобы изменить параметры маршрута по умолчанию, используется команда:

Источник

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