Сергей Маликов
16.10.2019
1363

Маршрутизация в Linux

В статье рассматривается вывод и изменение маршрутизации утилитой ip, изменение конфигурационных файлов сетевого интерфейса. ip – утилита для работы с маршрутизацией, и параметрами сетевого интерфейса.  Вывод на экран имеющихся маршрутов выполняется командой: ip route Несколько таблиц маршрутизации: main, local и default предопределены. При отсутствии в параметрах команды ip route названия таблицы, используется главная — main.В […]

Маршрутизация в Linux

В статье рассматривается вывод и изменение маршрутизации утилитой ip, изменение конфигурационных файлов сетевого интерфейса.

ip – утилита для работы с маршрутизацией, и параметрами сетевого интерфейса.  
Вывод на экран имеющихся маршрутов выполняется командой:

ip route

Просмотр имеющихся маршрутов
Просмотр имеющихся маршрутов
Команды, утилиты ip можно сокращать, например ip route add также можно набирать сокращенно: ip ro ad, ip rule – ip ru.

Несколько таблиц маршрутизации: main, local и default предопределены.
При отсутствии в параметрах команды ip route названия таблицы, используется главная — main.
В local заносятся правила для локальных ip, широковещательных пакетов.

default – таблица, вначале не содержащая правил.
ip route show table local — вывод определенной таблицы

Вывод определенной таблицы
Вывод определенной таблицы
  • ip addr show – вывод всех сетевых настроек по всем интерфейсам у данного хоста
Просмотр сетевых настроек
Просмотр сетевых настроек
  • ip route flush cache – очистка кэша
  • ip rule – вывод правил маршрутизации
Вывод правил
Вывод правил

Вначале указывается идентификатор, from all – применяется для всех пакетов, параметр lookup –таблица, в которую пакет должен быть отправлен.

Общий вид команд добавления сетевых маршрутов:

ip route add {адрес_сети/маска_сети} via {ip_шлюза} 
ip route add {адрес_сети/маска_сети} dev {интерфейс} 
ip route add default {адрес_сети/маска_сети} dev {интерфейс} 
ip route add default {адрес_сети/маска_сети} via {ip_шлюза}

Добавление временных маршрутов.

Добавить маршрут в сеть 10.10.1.0/24 через шлюз 10.10.1.1:

ip route add 10.10.1.0/24 via 10.10.1.1

Добавить маршрут в сеть 10.10.1.0/24 использовать интерфейс:

ip route add 10.10.1.0/24 dev eth0

Добавить маршрут в сеть 10.10.1.0/24 использовать интерфейс, установив метрику 50:

ip route add 10.10.1.0/24 dev eth0 metric 50

Предположим, на шлюз приходят пакеты с IP 192.168.1.1. Их необходимо отправлять на шлюз 10.10.1.2.

Создаем таблицу:

ip route add default via 10.1.0.1 table 16811

Правило, отправляющее пакеты в таблицу:

ip rule add from 192.168.1.1 table 16811

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

ip route del 10.10.1.0/24  via 10.10.1.1 dev eth0
ip route del 10.10.1.0/24 dev eth0

Blackhole маршруты.
Пакеты, которые пойдут по blackhole маршруту будут удалены.
Удалить пакеты сети 1.2.3.0 с маской 255.255.255.0.

ip route add blackhole 1.2.3.0/255.255.255.0

Добавление постоянных статических маршрутов.

Для добавления постоянных маршрутов для интерфейса eth0 необходимо отредактировать файл /etc/sysconfig/network-scripts/route-eth0

nano /etc/sysconfig/network-scripts/route-eth0

Для применения изменений необходимо сделать рестарт сетевого сервиса. В RHEL 6/CentOS 6

service network restart

или

/etc/init.d/network restart
В RHEL 7/CentOS 7
systemctl restart network.service

Также, можно остановить и поднять интерфейс eth0:

cd /etc/sysconfig/network-scripts/
ifdown eth0 – остановить eth0
ifup eth0 – поднять eth0

Для проверки запустить утилиту ping или ip

ping 10.10.1.1 или ip r

В случаях, когда необходимо повлиять на выбор интерфейса выхода, который будет использоваться для доступа к шлюзу, необходимо использовать команду DEFROUTE=no в файлах ifcfg для тех интерфейсов, которые не ведут к шлюзу по умолчанию.

Глобальная конфигурация шлюза по умолчанию находится в /etc/sysconfig/network.

Редактирование конфигурационного файла /etc/sysconfig/network
Редактирование конфигурационного файла /etc/sysconfig/network

Шлюз для интерфейса eth0 в /etc/sysconfig/network-scripts/ifcfg-eth0
nano /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE – имя интерфейса
BOOTPROTO – способ получения ip адреса: static, dhcp
ONBOOT – автоподнятие интерфейса при старте системы
HWADDR – контрольный параметр, используется для привязки интерфейса к mac-адресу
MACADDR — используется для изменения mac адреса
UUID – уникальный идентификатор интерфейса
GATEWAY – шлюз по умолчанию для этого интерфейса

При указании статического ip адреса указываются параметры:

IPADDR – ip адрес.
NETMASK – маска сети.
DNS – адрес DNS сервера.

Редактирование конфигурационного файла /etc/sysconfig/network-scripts/ifcfg-eth0
Редактирование конфигурационного файла /etc/sysconfig/network-scripts/ifcfg-eth0

В случае, если необходимо добавить диапазон адресов для интерфейса eth0 необходимо отредактировать файл /etc/sysconfig/network-scripts/ifcfg-eth0-range0, добавив туда параметры:

IPADDR_START — начальный IP из диапазона
IPADDR_END — последний IP из диапазона
CLONENUM_START — стартовый номер в имени интерфейса, с которого начнется нумерация добавленных интерфейсов.
NETMASK — маска подсети для каждого IP адреса

Например:

IPADDR_START=192.168.32.82
IPADDR_END=192.168.32.85
CLONENUM_START=1
NETMASK=255.255.255.255

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

Подписаться
Уведомление о
guest
0 Комментарий
Inline Feedbacks
View all comments

Остались вопросы?

Я - Кондрашин Игорь, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.

VoIP оборудование

ближайшие курсы

ближайшие Вебинары

ONLINE

10 доводов в пользу Asterisk

Распространяется бесплатно.

Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.

Безопасен в использовании.

Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.

Надежен в эксплуатации.

Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.

Гибкий в настройке.

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

Имеет огромный функционал.

Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.

Интегрируется с любыми системами.

То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.

Позволяет телефонизировать офис за считанные часы.

В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.

Отличная масштабируемость.

Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.

Повышает управляемость бизнеса.

Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.

Снижает расходы на связь.

Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.