- Настройка TCP/IP в CentOS
- проверка наличия драйверов сетевой карты
- просмотр текущей конфигурации сети
- динамическая настройка параметров сети
- включение / отключение сетевого интерфейса
- настройка маршрутизации
- добавление маршрутов
- просмотр таблицы маршрутов
- удаление маршрутов
- настройка DNS
- настройка параметров сети с помощью файлов конфигураций
- расположение конфигурационных файлов
- структура конфигурационных файлов
- ifcfg-ethX
- resolv.conf
- route-ethX
- перезагрузка сетевого сервиса
- примеры файлов
- Управление сетевыми маршрутами в CentOS 7
- Посмотреть маршруты (route print)
- Добавить или удалить статический маршрут
- Разово (до перезагрузки сетевой службы или компьютера)
- Постоянно (permanently)
- Поменять маршрут
- Настройка сетевых маршрутов в Linux (CentOS)
- Просмотр таблицы маршрутизации в Linux
- Как добавить или удалить статический маршрут?
- Изменить маршрут в Linux
- Изменить маршрут по умолчанию
- Настройка сетевых маршрутов в CentOS
- Просмотр таблицы маршрутизации в Linux
- Как добавить или удалить статический маршрут?
- Изменить маршрут в Linux
- Изменить маршрут по умолчанию
Настройка 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 |
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
Чтобы сбросить все временные маршруты в таблице маршрутизации, просто перезапустите сетевой сервис:
]# 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 используется команда:
Чтобы изменить параметры маршрута по умолчанию, используется команда:
Источник