Посмотреть статические маршруты linux

Содержание
  1. Как добавить статические маршруты (routes) в Ubuntu
  2. Добаление маршрута в linux (static routes)
  3. Как сохранить статический маршрут
  4. Как посмотреть маршруты в системе
  5. Сохранить статический маршрут в CentOS (Redhat)
  6. Маршрутизация в Linux
  7. Материал из Xgu.ru
  8. Содержание
  9. [править] Команды
  10. [править] Использование route
  11. [править] Использование ip
  12. [править] Действия с маршрутами
  13. [править] Equal Cost Multi Path
  14. [править] IPv6
  15. [править] Просмотр маршрутов до определенной сети
  16. [править] Пересылка пакетов между интерфейсами
  17. [править] Конфигурационные файлы
  18. [править] Policy routing
  19. Просмотр и построение таблиц маршрутизации в Linux
  20. Что такое маршрутизация
  21. Как посмотреть таблицу маршрутизации
  22. Команда route
  23. Команда netstat
  24. Построение таблицы маршрутизации
  25. Route
  26. Ключи
  27. Основные опции (command)
  28. Обозначения
  29. Опции для указания вводных данных
  30. IP Route
  31. Основные опции (command)
  32. Обозначения
  33. Опции для указания вводных данных
  34. Примеры статической маршрутизации
  35. Составление нового маршрута
  36. Изменение локальной сети
  37. Изменение адреса тоннеля
  38. Изменение провайдера
  39. Настройка сетевых маршрутов в Linux (CentOS)
  40. Просмотр таблицы маршрутизации в Linux
  41. Как добавить или удалить статический маршрут?
  42. Изменить маршрут в Linux
  43. Изменить маршрут по умолчанию

Как добавить статические маршруты (routes) в Ubuntu

Written by on 28.09.2015 . Posted in Linux

Добаление маршрута в linux (static routes)

В память можно добавить маршрут используя route или через ip ro

синтаксис route
route add [-net|-host] netmask gw dev X

синтаксис ip ro
ip route add via

Все параметры можно посмотреть ip route help

примечание: в команде ip можно использовать сокращенный синтаксис ip ro … в место ip route …
Для удаления статического маршрута используйте del вместо add

Как сохранить статический маршрут

Все эти маршруты будут добавлены в память и сохранятся до перезагрузки. Если необходимо, загружать маршруты при загрузки системы, то необходимо добавить их в файл конфигурации интерфейсов (для ubuntu и debian). /etc/network/interfaces

Добавим в конец файла следующую сточку:

up ip ro add 192.168.2.0/24 via 192.168.0.1

пример файла конфигурации.

Как посмотреть маршруты в системе

Сохранить статический маршрут в CentOS (Redhat)

  1. Необходимо отредактировать (если нет создать) файл
    /etc/sysconfig/network-scripts/route-ethX — ethX заменить на номер интерфейса (eth0, eth1 …)
    добавить следующие строки:

X.X.X.X — заменить на нужные значения
Другой вариант добавить маршруты в файл /etc/sysconfig/static-routes. Если нет этого файла — необходимо создать.

Пример содержания фала:

PS: Если маршрутов много или ими нужно управлять (добавлять или удалять) то лучше для этого использовать демон статической маршрутизации
Вам помогла эта статья, не забудьте сказать «спасибо» для благодарности используется вертикальная и горизонтальная реклама на сайте.

Источник

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

Материал из Xgu.ru

Linux предоставляет большой набор функций для маршрутизации и инструменты для ее настройки. Ядро 2.6.x поддерживает:

  • Простую статическую маршрутизацию.
  • Equal Cost Multi Path маршруты (маршруты до одной сети с одинаковым весом, которые выбираются с равной вероятностью).
  • Blackhole-маршруты.
  • Множественные таблицы маршрутизации.
  • Policy Based Routing

Содержание

[править] Команды

Для управления маршрутизацией применяются следующие команды: route, netstat, ip (последняя из пакета iproute2, возможно его придется установить).

Просмотреть таблицу можно следующими способами:

При этом следует учитывать, что доступ ко всем возможностям дает только ip. Используя route вы не только не сможете настроить «продвинутые» функции вроде политик маршрутизации, но и не увидите их существование в выводе команды просмотра, если они уже настроены в системе. Поэтому следует по возможности использовать ip.

Модификация таблицы маршрутизации:

[править] Использование route

[править] Использование ip

Синтаксис ip по структуре напоминает синтаксис Cisco IOS. Любые опции могут быть сокращены до потери двусмысленности, например «ip ro ad» вместо «ip route add».

Командой вида ip route add blackhole 10.56.50.0/27 можно добавить «зануленный» маршрут (аналог «ip route . null0» в Cisco). Пакеты в сеть с таким маршрутом будут удалены с причиной «No route to host». Может быть полезно для подавление DoS-атаки с хоста или иных подобных случаев.

[править] Действия с маршрутами

Кроме add также поддерживаются и другие действия:

  • del — удалить маршрут.
  • replace — заменить маршрут другим.
  • change — изменить параметры маршрута.

[править] Equal Cost Multi Path

Если добавить два маршрута до одной и той же сети с одинаковой метрикой, ядро начнет распределять нагрузку между ними путем выбора того или другого с равной вероятностью. Работает и для более чем двух маршрутов. Предупреждение: это может вызвать проблемы со входящими соединениями, потому что иногда ответ может пойти по другому маршруту, чем пришел запрос. Будьте осторожны.

[править] IPv6

Настройка маршрутизации IPv6 почти идентична настройке для IPv4.

В некоторых дистрибутивах еще есть нерешенная проблема с маршрутом по умолчанию (например, старые версии RHEL), используйте

[править] Просмотр маршрутов до определенной сети

На маршрутизаторах с длинной таблицей может быть неудобно просматривать вывод «ip route show» в поисках нужного маршрута. В этом случае можно использовать команду вида:

которая выведет маршруты только до указанной сети.

[править] Пересылка пакетов между интерфейсами

Linux позволяет разрешить или запретить пересылку пакетов между интерфейсами (forwarding). На рабочих станциях и серверах приложений ее можно запретить, на маршрутизаторах или межсетевых экранах она, очевидно, должна быть разрешена.

За этот параметр для IPv4 отвечает переменная net.ipv4.ip_forward (1 = «разрешить», 0 = «запретить»).

Для IPv6 используйте net.ipv6.conf.all.forwarding

Чтобы настройки сохранились после перезагрузки, пропишите значения net.ipv4.ip_forward и net.ipv6.conf.all.forwarding в /etc/sysctl.conf.

[править] Конфигурационные файлы

Настройки статической маршрутизации находятся в различных файлах, в зависимости от дистрибутива.

  • Debian GNU/Linux: /etc/network/interfaces
  • RHEL/CentOS/Scientifix: etc/sysconfig/network-scripts/route-
  • Gentoo: /etc/conf.d/net

(добавьте свои дистрибутивы, пожалуйста)

[править] Policy routing

Для хоста 192.168.1.1 используется особенная таблица маршрутизации (table 3), не такая как для всех остальных хостов. В ней указан единственный маршрут — маршрут по умолчанию.

Все будут ходить через шлюз 10.0.1.2, а 192.168.1.1 — через 10.0.3.4.

Источник

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

Содержание:

Что такое маршрутизация

Вся цифровая информация передаётся по сети в виде пакетов данных. По пути от отправителя к адресату они проходят через цепочку промежуточных устройств – маршрутизаторов (роутеров) и/или соответственно настроенных компьютеров.

Маршрутизация – это процесс определения пути (сетевого маршрута) для установки соединения между хост-устройствами. Этот путь настраивается как внутри локального устройства, так и на маршрутизаторе.

Построение сетевого маршрута происходит на основе информации из таблиц маршрутизации. Для их формирования применяются протоколы маршрутизации или инструкции сетевого администратора.

Каждая таблица содержит ряд параметров, позволяющих правильно идентифицировать и читать сетевой маршрут. Таблица содержит минимум 5 разделов:

  • Destination (Target). IP-адрес сети назначения – конечной цели для передаваемых данных.
  • Netmask (Genmask). Маска сети.
  • Gateway. IP-адрес шлюза, через который можно добраться до цели.
  • Interface. Адрес сетевого интерфейса, по которому доступен шлюз.
  • Metric. Числовой показатель, задающий предпочтительность маршрута.

Опционально в таблице также может содержаться следующая информация:

  • адрес отправителя (source);
  • размер TCP-окна (window);
  • максимальная величина пакета (MSS) и типы записей.

Как посмотреть таблицу маршрутизации

Таблицу маршрутизации в Linux (например, в популярных серверных ОС типа Ubuntu или CentOS) можно посмотреть с помощью нескольких команд.

Команда route

Программа используется для настройки параметров статической маршрутизации. Просмотр таблицы можно осуществить с помощью команды:

Команда netstat

Утилита используется для сбора информации о состоянии сетевых соединений. Вывести таблицу можно с помощью команды:

Построение таблицы маршрутизации

Существует несколько основных утилит для настройки таблицы маршрутизации (добавления, обновления, удаления старых и новых маршрутов):

  • Route. Устаревшая утилита, входящая в состав пакета net-tools. Служит для отображения таблицы маршрутизации и построения статических маршрутов.
  • IP Route. Обновленный инструмент, призванный заменить Route. Имеет большую функциональность, по сравнению со своим предшественником.

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

Route

Команда имеет следующий вид:

Ключи

  • -f – очистка таблиц от записей всех шлюзов.
  • -p – сохранение маршрута в качестве постоянного при использовании ADD. По умолчанию все маршруты временные и после перезагрузки системы сбрасываются.

Основные опции (command)

  • add – добавление маршрута.
  • del – удаление маршрута.
  • replace – замена маршрута.
  • change – изменение или настройка параметров маршрута.

Обозначения

  • [destination] – адрес сети назначения.
  • [MASKnetmask] – маска подсети.
  • [gateway] – адрес шлюза.
  • [METRICmetric] – числовой показатель, задающий предпочтительность маршрута (используется в том случае, если устройство является маршрутизатором).
  • [IFinterface] – сетевой интерфейс.

Опции для указания вводных данных

  • -net – целевая сеть.
  • -host – целевой хост.
  • gw – шлюз (Gateway).
  • dev – сетевой интерфейс.
  • netmask – маска подсети.
  • metric – метрика.

IP Route

Команда имеет следующий вид:

Основные опции (command)

  • add – добавление маршрута.
  • del – удаление маршрута.
  • replace – замена маршрута.
  • change – изменение или настройка параметров маршрута.

Обозначения

  • [destination] – адрес сети назначения.
  • [MASKnetmask] – маска подсети.
  • [gateway] – адрес шлюза.
  • [METRICmetric] – числовой показатель, задающий предпочтительность маршрута (используется в том случае, если устройство является маршрутизатором).
  • [IFinterface] – сетевой интерфейс.

Опции для указания вводных данных

  • via – используется в значении «через» для указания шлюза.
  • dev – сетевой интерфейс.
  • netmask – маска подсети.
  • metric – метрика.

Примеры статической маршрутизации

Составление нового маршрута

Можно представить два офиса: A и B. В каждом стоят маршрутизаторы на Linux, которые соединены между собой IP-IP туннелем.

Маршрутизатор A имеет IP-адрес — 192.168.1.1, а маршрутизатор B — 192.168.1.2.

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

Будет произведена установка шлюза «192.168.1.1» для сети «172.16.10.0/24».

Также необходимо прописать на маршрутизаторе A обратный маршрут в локальную сеть маршрутизатора B:

Изменение локальной сети

В случае изменения локальной сети маршрутизатора B, необходимо удалить старую запись:

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

Изменение адреса тоннеля

Если на маршрутизаторе B изменится IP-адрес туннеля, то следует также актуализировать адрес шлюза на маршрутизаторе А:

После выполнения команды адрес шлюза для подсети «172.16.10.0/24» будет изменён.

Изменение провайдера

Чтобы перенаправить трафик через другого провайдера («ISP2»), следует изменить маршрут «по умолчанию» («default»):

Начни экономить на хостинге сейчас — 14 дней бесплатно!

Источник

Настройка сетевых маршрутов в 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 (маршрут через имя устройства)

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

Источник

Читайте также:  Нет меню выбора windows
Оцените статью