Маршрутизация на основе политик. часть четвертая
Содержание:
- Настройка сети
- Настройка
- Принятие решений о переадресации
- Статический маршрут для взаимодействия через интерфейс без IP-адреса следующего перехода
- Примеры использования утилиты route
- Настройка pc-1 и pc-2
- Статическая и динамическая маршрутизация
- Что такое статическая маршрутизация?
- Проверка маршрута для pc-2
- Маршрутизация между двумя локалками через шлюз с двумя сетевыми картами
- Статический маршрут в Windows — как прописать? Примеры использования утилиты route
- Связанные процессы
- Файл конфигурации сети
- Статическая маршрутизация
Настройка сети
На компьютере установлена ОС Ubuntu Server, настройка сети выполнена с использованием Netplan:
# nano /etc/netplan/01-netcfg.yaml
network version 2 renderer networkd ethernets enp0s3 addresses 192.168.50.2/24 routes # маршрут по умолчанию для таблицы main, метрика 100 (основной) - to 0.0.0.0/0 from 192.168.50.2 via 192.168.50.1 metric 100 # маршрут по умолчанию для таблицы primary (идентификатор 10) - to 0.0.0.0/0 via 192.168.50.1 table 10 routing-policy # если отправитель 192.168.50.2, просматривать таблицу primary - from 192.168.50.2 table 10 priority 31000 nameservers addresses 8.8.8.8, 8.8.4.4 enp0s8 addresses 192.168.150.2/24 routes # маршрут по умолчанию для таблицы main, метрика 200 (резервный) - to 0.0.0.0/0 from 192.168.150.2 via 192.168.150.1 metric 200 # маршрут по умолчанию для таблицы secondary (идентификатор 20) - to 0.0.0.0/0 via 192.168.150.1 table 20 routing-policy # если отправитель 192.168.150.2, просматривать таблицу secondary - from 192.168.150.2 table 20 priority 32000 nameservers addresses 8.8.8.8, 8.8.4.4 enp0s9 addresses 192.168.250.1/24 nameservers addresses 8.8.8.8, 8.8.4.4
После загрузки системы смотрим маршруты таблицы :
$ ip route show default via 192.168.50.1 dev enp0s3 proto static src 192.168.50.2 metric 100 default via 192.168.150.1 dev enp0s8 proto static src 192.168.150.2 metric 200 192.168.50.0/24 dev enp0s3 proto kernel scope link src 192.168.50.2 192.168.150.0/24 dev enp0s8 proto kernel scope link src 192.168.150.2 192.168.250.0/24 dev enp0s9 proto kernel scope link src 192.168.250.1
Здесь два маршрута по умолчанию, но с разными значениями метрики — один маршрут основной (метрика 100), другой резервный (метрика 200).
Настройка
Эти методы используются для объявления маршрута по умолчанию в протоколе EIGRP в соответствии с инструкциями в этой статье:
1. Использование маршрута по умолчанию и перераспределения
2. Использование суммарного адреса
_________________________ М1
!router eigrp 1 network 192.168.12.0!R1#show ip routeCodes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static routeGateway of last resort is not setC 192.168.12.0/24 is directly connected, FastEthernet0/0D 192.168.23.0/24 [90/30720] via 192.168.12.2, 00:10:27, FastEthernet0/0
R2
! router eigrp 1 network 192.168.12.0 network 192.168.23.0!R2#show ip routeCodes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static routeGateway of last resort is not setC 192.168.12.0/24 is directly connected, FastEthernet0/0C 192.168.23.0/24 is directly connected, FastEthernet0/1
R3
! router eigrp 1 network 192.168.23.0!R3#show ip routeCodes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP a - application route + - replicated route, % - next hop overrideGateway of last resort is not setD 192.168.12.0/24 [90/28416] via 192.168.23.2, 00:05:16, GigabitEthernet0/0/1 192.168.23.0/24 is variably subnetted, 2 subnets, 2 masksC 192.168.23.0/24 is directly connected, GigabitEthernet0/0/1L 192.168.23.3/32 is directly connected, GigabitEthernet0/0/1 192.168.34.0/24 is variably subnetted, 2 subnets, 2 masksC 192.168.34.0/24 is directly connected, Serial0/2/0L 192.168.34.3/32 is directly connected, Serial0/2/0
Принятие решений о переадресации
Давайте взглянем на три маршрута, которые мы только что установили в таблице маршрутизации, и посмотрим, как они выглядят на маршрутизаторе.
Если пакет прибывает на интерфейс маршрутизатора с адресом назначения 192.168.32.1, какой маршрут выберет маршрутизатор? Это зависит от длины префикса или количества бит, установленного в маске подсети. При пересылке пакета более длинные префиксы всегда предпочтительнее коротких.
В этом примере, пакет, отправленный по адресу 192.168.32.1 направляется в сеть 10.1.1.1, так как адрес 192.168.32.1 находится в сети 192.168.32.0/26 (192.168.32.0–192.168.32.63). Адресу соответствуют еще два доступных маршрута, но у 192.168.32.0/26 наиболее длинный префикс в таблице маршрутизации (26 бит против 24 и 19).
Точно так же, если пакет, направленный на адрес 192.168.32.100, прибывает на один из интерфейсов маршрутизатора, он перенаправляется на 10.1.1.2, поскольку 192.168.32.100 не попадает в диапазон адресов 192.168.32.0/26 (от 192.168.32.0 до 192.168.32.63), но попадает в диапазон адресов 192.168.32.0/24 назначения (от 192.168.32.0 до 192.168.32.255). Опять, он также попадает в область, перекрытую 192.168.32.0/19, но 192.168.32.0/24 имеет более длинный префикс.
Ip classless
Для тех адресов, для которых команда ip classless configuration попадает в данный диапазон, возможно возникновение сбоев в процессе маршрутизации и пересылки. В реальности команда «IP classless» влияет только на работу процессов переадресации IOS, но не влияет на построение таблицы маршрутизации. Если функция «IP classless» не настроена (с помощью команды no ip classless), маршрутизатор не будет переадресовать пакеты в подсети. Для примера снова поместим три маршрута в таблицу маршрутизации и проведем пакеты через маршрутизатор.
Примечание: Если суперсеть или маршрут по умолчанию получены через IS-IS или OSPF, то команда no ip classless configuration игнорируется. В этом случае режим коммутация пакетов работает так, как если бы команда ip classless была настроена.
Помня о том, что сеть 172.30.32.0/24 включает адреса с 172.30.32.0 по 172.30.32.255, а сеть 172.30.32.0/20 включает адреса с 172.30.32.0 по 172.30.47.255, мы можем выполнить коммутацию трех пакетов с использованием этой таблицы маршрутизации и проанализировать результаты.
-
Пакет, направленный по адресу 172.30.33.1, переадресуются на 10.1.1.2, так как этот маршрут имеет наибольший префикс.
-
Пакет, предназначенный для адреса 172.30.33.1, пересылается на 10.1.1.2, из-за совпадения самого длинного префикса.
-
Пакет, направленный по адресу 192.168.10.1 переадресуются на 10.1.1.3. Так как сеть отсутствует в таблице маршрутизации, пакет переадресуется на маршрут по умолчанию.
-
Пакет, отправленный по адресу 172.30.254.1, отбрасывается.
Удивительно, что из этих четырех пакетов был отброшен последний. Он отброшен потому, что его место назначения 172.30.254.1 находится внутри известной крупной сети 172.30.0.0/16, но маршрутизатор не знает об этой отдельной подсети внутри этой крупной сети.
На этом основана маршрутизация типа classful: Если одна часть основной сети известна, но подсеть в этой основной сети, для которой предназначен пакет, не известна, пакет отбрасывается.
Самым сложным для понимания аспектом этого правила является то, что маршрутизатор использует только маршрут по умолчанию, если крупная сеть назначения вообще не существует в таблице маршрутизации.
Это может вызвать проблемы в сети, когда удаленный участок с одной связью к остальной части сети не выполняет никаких протоколов маршрутизации, как проиллюстрировано.
Маршрутизатор удаленного сайта настраивается следующим образом:
В такой конфигурации узлы на удаленном узле могут достичь назначения через Интернет (через облако 10.x.x.x), но не назначений в облаке 10.x.x.x, которое является корпоративной сетью. Поскольку удаленный маршрутизатор обладает информацией о части сети 10.0.0.0/8, двух напрямую подключенных подсетях и ничего не знает о другой подсети диапазона 10.x.x.x, то он предполагает, что таких подсетей не существует, и сбрасывает предназначенные для них пакеты. Однако трафик, направленный в Интернет, не имеет получателя в диапазоне адресов 10.x.x.x и поэтому правильно направляется по стандартному маршруту.
Настройка бесклассового IP на удаленном маршрутизаторе позволяет решить эту проблему, так как она позволяет удаленному маршрутизатору игнорировать границы класса сетей в таблице маршрутизации и выполнять маршрутизацию просто по совпадению с наибольшей длиной префикса.
Статический маршрут для взаимодействия через интерфейс без IP-адреса следующего перехода
Если вы указываете статический маршрут к интерфейсу и не задаете IP-адрес следующего перехода, маршрут вставлен в таблицу маршрутизации только, когда интерфейс активен. Эта конфигурация не рекомендуется, потому что, когда точки статического маршрута к интерфейсу и не имеет никакой информации о следующем переходе, маршрутизатор полагает, что каждый из хостов в диапазоне маршрута напрямую подключается через тот интерфейс.
При использовании конфигурации этого типа маршрутизатор выполняет протокол ARP по Ethernet для каждой точки назначения, которую находит в маршруте по умолчанию, поскольку считает все эти точки непосредственно связанными с Ethernet 0. Использование статического маршрута этого вида, особенно если он используется множеством пакетов, направленных в несколько разных подсетей назначения, может привести к высокой загрузке процессора и образованию очень большого ARP-кеша (наряду с ошибками выделения памяти). Поэтому этот вид статического маршрута не рекомендуется.
При определении адреса следующего узла на непосредственно связанный интерфейс маршрутизатор не выполняет ARP для каждого адреса назначения (DA). Примером является маршрут ip route 0.0.0.0 0.0.0.0 Ethernet0 192.168.1.1. Можно указать только адрес напрямую подключенного следующего узла, но делать это не рекомендуется по причинам, которые описаны в этом документе. Указывать адрес напрямую подключенного следующего перехода не обязательно. Можно задать адрес удаленного следующего перехода и интерфейс, к которому удаленный следующий переход делает рекурсивный вызов.
Если существует возможность, что интерфейс со следующим переходом выключается, и следующий переход стал бы достижимым через рекурсивный маршрут, то необходимо задать и IP-адрес следующего перехода и альтернативный интерфейс, через который должен быть найден следующий переход. Например, ip route 10.0.0.1 255.255.255.255 Последовательных 3/3 192.168.20.1. Добавление альтернативного интерфейса позволяет установке статического маршрута стать более детерминированной.
Примеры использования утилиты route
Хватит теории, переходим к практике. Сейчас мы с Вами пропишем маршрут, который разрешит нам получить доступ к локальной сети при включенном VPN соединении, пригодится обычным пользователям, у которых дома более одного компьютера, а в Интернет выходят по средствам VPN.
Имеем локальную сеть: 192.168.1.0/24
Локальный IP первого компьютера (пусть он будет компьютер — A) – 192.168.1.2 (на котором присутствует VPN соединение)
Локальный IP второго компьютера (а этот компьютер — B) – 192.168.1.3
IP адрес шлюза т.е. модема – 192.168.1.1
Нам нужно прописать маршрут на компьютере A, чтобы он смог видеть компьютер B при включенном VPN соединении. Делается это следующем образом: запускаем командную строку Пуск->Выполнить->cmd и набираем следующую команду:
route –p add 192.168.1.0 mask 255.255.255.0 192.168.1.1
route – сама программа, которая работает с таблицей маршрутизации;
-p – ключ, который говорит, что маршрут будет постоянный, так как (Важное замечание!) без этого ключа все маршруты, которые Вы добавите удалятся после перезагрузке, поэтому если Вы хотите использовать маршрут всегда, то пропишите этот ключ, если только один раз, то его можно не писать;
add – команда, добавляющая запись в таблицу маршрутизации;
192.168.1.0 – сеть, с которой Вы хотите иметь связь;
mask 255.255.255.0 – маска подсети;
192.168.1.1 – адрес шлюза, обычно это адрес модема. Добавив всего один маршрут, Вы получаете доступ к своей сети при подключенном Интернете, т.е
VPN соединении
Добавив всего один маршрут, Вы получаете доступ к своей сети при подключенном Интернете, т.е. VPN соединении.
Вот еще один небольшой пример, у Вас дома подключение к Интернету через модем ADSL и Вам иногда (ну или постоянно) требуется подключение к VPN сети, и соответственно выхода в Интернет через свой канал у Вас уже не будет. Но с помощью статического маршрута Вы можете получить доступ к определенным сайтам (узнав предварительно их ip адреса, с помощью команды ping в командной строке, например ping yandex.ru), к которым Вам бы хотелось иметь постоянный доступ (и при подключенном VPN соединении и неподключенном). Например, сайт имеет ip адрес 172.18.24.13, а шлюз (маршрутизатор, модем) имеет IP адрес 192.168.0.1, Вам необходимо прописать следующее:
route –p add 172.18.24.13 mask 255.255.255.255 192.168.0.1
Настройка pc-1 и pc-2
Настройка сети одинаковая для и , выполнена с использованием Netplan, им назначены ip-адреса и :
$ sudo nano /etc/netplan/01-network-manager-all.yaml
# Настройка сети для компьютера pc-1 network version 2 renderer networkd ethernets enp0s3 addresses 192.168.250.2/24 gateway4 192.168.250.1 nameservers addresses 8.8.8.8, 8.8.4.4
Служба отключена, вместо нее за сеть отвечает служба :
# systemctl stop NetworkManager.service # systemctl disable NetworkManager.service # systemctl start systemd-networkd.service # systemctl enable systemd-networkd.service
$ sudo nano /etc/netplan/01-network-manager-all.yaml
# Настройка сети для компьютера pc-2 network version 2 renderer networkd ethernets enp0s3 addresses 192.168.250.3/24 gateway4 192.168.250.1 nameservers addresses 8.8.8.8, 8.8.4.4
Статическая и динамическая маршрутизация
В компьютерных сетях маршрутизация — одна из самых важных вещей, обеспечивающих правильную работу компьютерной сети. Статическая маршрутизация — это процесс, при котором администратор должен вручную настроить записи маршрутизации. С другой стороны, при динамической маршрутизации таблицы маршрутизации автоматически создаются с использованием алгоритмов, называемых алгоритмами маршрутизации, такими как RIP и OSPF. Для больших сложных сетей использование статической маршрутизации очень утомительно и, следовательно, необходимо использовать динамическую маршрутизацию. Преимущество динамической маршрутизации состоит в том, что таблицы маршрутизации будут периодически генерироваться и, следовательно, соответствовать любым изменениям в сети. Но недостатком является то, что вычисления при динамической маршрутизации требуют большей вычислительной мощности.
Изображения любезно предоставлены:
- Система динамической маршрутизации для будущих перевозок на BP63Vincent (CC BY-SA 3.0)
Что такое статическая маршрутизация?
При статической маршрутизации сеть администратор вручную вводит записи маршрутизации в таблицу маршрутизации каждого маршрутизатора и компьютера. Запись маршрутизации — это запись, указывающая, на какой шлюз должен быть перенаправлен пакет, чтобы он достиг определенного пункта назначения. На каждом маршрутизаторе или компьютере существует таблица, называемая таблицей маршрутизации, которая содержит ряд записей маршрутизации. Для простой небольшой сети ввод статических маршрутов к каждому маршрутизатору был бы возможен, но это становится слишком утомительным с увеличением размера и сложности сети. Кроме того, если в сети происходит изменение, которое влияет на маршрутизацию (например, маршрутизатор не работает или добавляется новый маршрутизатор), записи маршрутизации необходимо изменить вручную. Таким образом, при статической маршрутизации управление таблицами маршрутизации также должно выполняться администратором. Преимущество статической маршрутизации состоит в том, что обработки не требуется много. Единственное действие — выполнить поиск в таблице маршрутизации для определенного пункта назначения, и, следовательно, оборудование маршрутизации не должно нуждаться в каких-либо сложных процессорах, что делает их дешевле.
Система динамических маршрутов для будущих перевозок
Проверка маршрута для pc-2
Проверим, что компьютер выходит в интернет через резервный канал связи:
$ traceroute -n ya.ru traceroute to ya.ru (87.250.250.242), 30 hops max, 60 byte packets 1 192.168.250.1 0.454 ms 0.384 ms 0.341 ms 2 192.168.150.1 1.177 ms 1.142 ms 1.091 ms .......... 9 87.250.250.242 10.984 ms 10.768 ms 10.716 ms
Удостоверимся, что компьютер выходит в интернет через основной канал связи:
$ traceroute -n ya.ru traceroute to ya.ru (87.250.250.242), 30 hops max, 60 byte packets 1 192.168.250.1 0.329 ms 0.225 ms 0.172 ms 2 192.168.50.1 0.376 ms 0.326 ms 0.394 ms .......... 9 87.250.250.242 8.377 ms 10.626 ms 11.813 ms
Маршрутизация между двумя локалками через шлюз с двумя сетевыми картами
Два вопроса по Windows 7.
Задача: Есть две локальные сети: 192.168.1.x и 192.168.0.x. Есть компьютер с двумя сетевыми для каждой из сетей с адресами: 192.168.1.4 и 192.168.0.4. Необходимо сделать так, чтобы компьютеры в любой сети видели компьютеры в другой сети и могли обращаться к ним по ip, используя в качестве шлюза компьютер с двумя сетевыми картами. Сетевой мост реализовать не получится, так как айпишники в сетях указываются явно — это необходимое условие.
Почитал про маршрутизацию. Вроде бы все просто. В таблице машрутизации компьютера с двумя сетевыми уже есть необходимые строки:
Адрес Маска Шлюз Интерфейс Метрика 192.168.0.0 — 255.255.255.0 — On-link — 192.168.0.4 — 276 192.168.1.0 — 255.255.255.0 — On-link — 192.168.1.4 — 266
Первую строчку таблицы маршрутизации можно понять, как «все приходящие пакеты на любой адрес 192.168.0.x отправлять напрямую к пункту назначения (без дополнительного шлюза) через сетевую карту 192.168.0.4». Вторая строчка — аналогична для второй сети. То есть по идее компьютер с двумя сетевыми при включенной службе маршрутизации должен работать, как шлюз.
Для компьютеров в обоих локалках в качестве шлюза в свойствах сетевой карты назначены соответствующие айпи адреса сетевых карт общего компьютера (192.168.1.4 и 192.168.0.4).
Тем не менее, маршрутизация не работает. Если я пытаюсь пинговать с компьютера первой сети компьютер второй сети, команда пишет «Превышен интервал ожидания запроса». Можете подсказать в чем дело? Служба маршрутизации на компьютере с двумя сетевыми запущена. Брендмауэр Виндоуз отключен.
В попытках настроить маршрутизацию столкнулся с явлением, которое не могу объяснить, так как не получается сделать элементарное действие.
На том самом компьютере с двумя сетевыми по умолчанию работает пинг своей собственной сетевой карты. То есть ping 192.168.0.4 пересылает пакеты без проблем. После удаления из таблицы маршрутизации строки с 192.168.0.4 пинг своей собственной карточки работать перестает. Другие компьютеры сети 192.168.0.x при этом пингуются. А теперь самое странное — после добавления удаленной строки вручную через команду route add с абсолютно теми же значениями параметров (адрес доставки, маска, шлюз и интерфейс) пинг собственной карточки не восстанавливается (. ) и начинает работать только после отключения и повторного запуска сетевого подключения. При этом таблица маршуртизации для случаев работающего пинга и неработающего выглядит абсолютно одинаково (см. вложения).
Неужели я как-то неправильно добавляю строки в таблицу маршрутизации?
Скриншоты команд и таблицы маршрутизации во вложении:
route_before: таблица маршрутизации и работающий пинг route_delete: команда удаления строки из таблицы route_after: восстановление удаленной строки вручную и почему-то неработающий пинг
Подскажите, в чем моя ошибка? Может быть есть ресурс где написано про роутинг подробнее?
Статический маршрут в Windows — как прописать? Примеры использования утилиты route
Статическая маршрутизация — это когда маршруты указываются в явном виде, при конфигурации маршрутизатора (сетевой карты). Вся маршрутизация при этом происходит без участия каких-либо протоколов маршрутизации.
Предлагаю ознакомиться с предложениями моих партнёров
Статический маршрут — это заданный администратором маршрут, который заставляет пакеты, перемещающиеся между источником и адресатом, отправляться по указанному пути — явно указанный путь, по которому должен пройти пакет из пункта A в пункт B.
Синтаксис и основные ключи утилиты route
Поподробней о команде route.
Общий синтаксис route:
route
Основные ключи route:
- -f — удаляет из таблицы маршрутизации все маршруты;
- -p – сохраняет маршрут на постоянную основу;
- add – добавляет новый маршрут;
- change — меняет текущий маршрут в таблице маршрутизации;
- delete — удаляет маршрут из таблицы маршрутизации;
- print — отображает содержимое таблицы маршрутизации;
- destination — при добавлении или изменении маршрута этот параметр используется для указания идентификатора сети назначения;
- mask — при добавлении или изменении маршрута этот параметр используется для указания маски подсети для сети назначения;
- gateway — при добавлении или изменении нового маршрута этот параметр используется для указания шлюза (маршрутизатора или модема);
- metric — используется для указания целого числа в диапазоне от 1 до 9999, являющегося метрикой стоимости для маршрута. Если для определенной сети назначения существует несколько возможных маршрутов, будет использован маршрут с наименьшим значением метрики;
- if — используется для указания номера индекса интерфейса, который подключен к сети назначения.
Для того чтобы просто посмотреть таблицу маршрутизации у себя на компьютере введите в командную строку следующие:
Думаю Вам интересней, о статическом маршруте на обыкновенном компьютере с операционной системой Windows.
Если у Вас дома два компьютера, один из которых имеет доступ в Интернет по средствам VPN, также он соединен со вторым компьютером локальной сетью, и каждый раз, когда он подключается к Интернету, то связь между двумя компьютерами теряется, так как первый компьютер (который подключился к VPN) уже находится в другой сети, и поэтому недоступен со второго компа.
Примеры использования утилиты route
Давайте с Вами пропишем маршрут, который разрешит нам получить доступ к локальной сети при включенном VPN соединении, пригодится обычным пользователям, у которых дома более одного компьютера, а в Интернет выходят по средствам VPN.
Имеем локальную сеть: 192.168.1.0/24
Локальный IP первого компьютера (пусть он будет компьютер — A) – 192.168.1.2 (на котором присутствует VPN соединение)
Локальный IP второго компьютера (а этот компьютер — B) – 192.168.1.3
IP адрес шлюза т.е. модема – 192.168.1.1
Вам нужно прописать маршрут на компьютере A, чтобы он смог видеть компьютер B при включенном VPN соединении. Делается это следующем образом: запускаем командную строку Пуск->Выполнить->cmd и набираем следующую команду:
route –p add 192.168.1.0 mask 255.255.255.0 192.168.1.1
route – сама программа, которая работает с таблицей маршрутизации;
-p – ключ, который говорит, что маршрут будет постоянный, так как (Важное замечание!) без этого ключа все маршруты, которые Вы добавите удалятся после перезагрузке, поэтому если Вы хотите использовать маршрут всегда, то пропишите этот ключ, если только один раз, то его можно не писать;
add – команда, добавляющая запись в таблицу маршрутизации;
192.168.1.0 – сеть, с которой Вы хотите иметь связь;
mask 255.255.255.0 – маска подсети;
192.168.1.1 – адрес шлюза, обычно это адрес модема.
Добавив всего один маршрут, Вы получите доступ к своей сети при подключенном Интернете, т.е. VPN соединении.
Или у Вас дома подключение к Интернету через модем ADSL но Вам требуется подключение к VPN сети, и соответственно выхода в Интернет через свой канал у Вас уже не будет. Но с помощью статического маршрута можно получить доступ к определенным сайтам (узнав предварительно их ip адреса), к которым Вам бы хотелось иметь постоянный доступ (и при подключенном VPN соединении и не подключенном). Если сайт имеет ip адрес 172.18.24.13, а шлюз имеет IP адрес 192.168.0.1, надо прописать так:
route –p add 172.18.24.13 mask 255.255.255.255 192.168.0.1
Связанные процессы
В создание и поддержку таблицы маршрутизации в маршрутизаторе Cisco вовлечены три процесса:
-
Различные процессы маршрутизации, которые фактически запускают сетевой протокол или протокол маршрутизации, такой как улучшенный протокол маршрутизации внутреннего шлюза (EIGRP), связь между промежуточными системами (IS-IS), первоочередное открытие кратчайших маршрутов (OSPF).
-
Сама таблица маршрутизации, которая получает сведения от процессов маршрутизации и отвечает на запросы данных от процесса переадресации.
-
Процесс переадресации, который запрашивает информацию из таблицы маршрутизации, чтобы принять решение о переадресации пакета.
Чтобы понять, как происходит построение таблицы маршрутизации, рассмотрим взаимодействие между протоколами маршрутизации и таблицей маршрутизации.
Файл конфигурации сети
Созданные нами правило и маршрут по умолчанию для таблицы пропадут при перезагрузке , поэтому надо изменить файл конфигурации сети:
# nano /etc/netplan/01-netcfg.yaml
network version 2 renderer networkd ethernets enp0s3 addresses 192.168.50.2/24 routes # маршрут по умолчанию для таблицы main, метрика 100 (основной) - to 0.0.0.0/0 from 192.168.50.2 via 192.168.50.1 metric 100 # маршрут по умолчанию для таблицы primary (идентификатор 10) - to 0.0.0.0/0 via 192.168.50.1 table 10 routing-policy # если отправитель 192.168.50.2, просматривать таблицу primary - from 192.168.50.2 table 10 priority 31000 nameservers addresses 8.8.8.8, 8.8.4.4 enp0s8 addresses 192.168.150.2/24 routes # маршрут по умолчанию для таблицы main, метрика 200 (резервный) - to 0.0.0.0/0 from 192.168.150.2 via 192.168.150.1 metric 200 # маршрут по умолчанию для таблицы secondary (идентификатор 20) - to 0.0.0.0/0 via 192.168.150.1 table 20 # маршрут по умолчанию для таблицы pc2-via-gw2 (идентификатор 30) - to 0.0.0.0/0 via 192.168.150.1 table 30 routing-policy # если отправитель 192.168.150.2, просматривать таблицу secondary - from 192.168.150.2 table 20 priority 32000 # если отправитель 192.168.250.3, просматривать таблицу pc2-via-gw2 # (отправлять пакеты от компьютера pc-2 через второго провайдера) - from 192.168.250.3 table 30 priority 30000 nameservers addresses 8.8.8.8, 8.8.4.4 enp0s9 addresses 192.168.250.1/24 nameservers addresses 8.8.8.8, 8.8.4.4
Дополнительно
- Linux маршрутизатор с несколькими внешними интерфейсами
- Роутинг и policy-routing в Linux при помощи iproute2
Поиск:
Bash • Linux • Локальная сеть • Маршрутизация • Настройка • Сетевой интерфейс • Таблица
Статическая маршрутизация
Статические маршруты задаются вручную. Плюс статических маршрутов в том, что они не требуют рассылки широковещательных пакетов с маршрутной информацией, которые занимают полосу пропускания сети.
Минус статических маршрутов состоит в том, что при изменении топологии сети администратор должен вручную изменить все статические маршруты, что довольно трудоемко, в случае если сеть имеет сложную структуру с большим количеством узлов.
Второй минус заключается в том, что при отказе какого-либо канала статический маршрут перестанет работать, даже если будут доступны другие каналы передачи данных, так как для них не задан статический маршрут.
Но вернемся к нашему примеру. Наша задача, имя исходные данные, установить соединения между хостом XP и Server2 который находится в сети Net3, то есть нужно что бы проходил пинг на 192.168.2.1.
Начнем выполнять на хосте XP команды постепенно удаляясь от самого хоста. Выполните в Командной строке команды для адресов 192.168.0.2, 192.168.0.1, 192.168.1.1.
Мы видим, что команды ping по адресу собственного интерфейса хоста XP и по адресу ближайшего интерфейса соседнего маршрутизатора Server1 выполняются успешно.
Однако при попытке получить ответ от второго интерфейса маршрутизатора Server1 выводится сообщение «Заданный узел недоступен» или «Превышен интервал ожидания для запроса».
Добавим в таблицу маршрутизации XP запись о маршруте к сети 192.168.1.0. Для этого введем команду route add с необходимыми параметрами:
Параметры команды имеют следующие значения:
- адресат — адрес сети или хоста, для которого добавляется маршрут;
- mask — если вводится это ключевое слово, то следующий параметр интерпретируется как маска подсети, соответственно маска — значение маски;
- шлюз — адрес шлюза;
- metric — после этого ключевого слова указывается метрика маршрута до адресата (метрика);
- if — после этого ключевого слова указывается индекс интерфейса, через который будут направляться пакеты заданному адресату.
Индекс интерфейса можно определить из секции Список интерфейсов (Interface List) выходных данных команды route print.
Выполним команду .
Теперь мы видим , что хост XP имеет два интерфейса: логический интерфейс замыкания на себя (Loopback) и физический интерфейс с сетевым адаптером Intel(R) PRO/1000. Индекс физического интерфейса – 0x2.
Теперь, зная индекс физического интерфейса, на хосте добавьте нужный маршрут, выполнив следующую команду:
Выполним пинг на 192.168.1.1 и убедимся, что связь есть.
Продолжим пинговать серверы, теперь проверьте отклик от второго маршрутизатора, присоединенного к сети Net2 (Server2). Он имеет IP-адрес 192.168.1.2.
Получаем сообщение «Превышен интервал ожидания запроса». В данном случае это означает что наш хост XP знает как отправлять данные адресату, но он не получает ответа.
На Server2 выполним команду route print и посмотрим индекс первого физического интерфейса. Далее, с помощью команды route add добавьте на Server2 маршрут до сети Net1, аналогично тому, как мы добавляли маршрут хосту XP.
В моем случае это команда:
— это индекс физического интерфейса сервера 2.
Индекс физического интерфейса может быть разным, обязательно обращайте на него внимание. После того, как удостоверитесь в наличии связи между узлами XP и Server2, выполните команду ping 192.168.2.1, т.е
проверьте наличие маршрута узла XP до сети Net3 (192.168.2.1 – IP-адрес маршрутизатора Server2 в сети Net3)
После того, как удостоверитесь в наличии связи между узлами XP и Server2, выполните команду ping 192.168.2.1, т.е. проверьте наличие маршрута узла XP до сети Net3 (192.168.2.1 – IP-адрес маршрутизатора Server2 в сети Net3).
Вместо ответа вы получите сообщение «Заданный узел недоступен». С этой проблемой мы сталкивались еще в самом начале лабораторной работы, машина XP не знает путей до сети 192.168.2.0.
Добавьте в таблицу маршрутизации хоста XP запись о маршруте к сети 192.168.2.0. Это можно сделать путем ввода в командной строке хоста XP команды route add с соответствующими параметрами: