Cisco туннелирование трафика между сетями (простой туннель)
Причин создания туннеля может быть масса. Для диванных профессионалов, которые не могут осознать, что существует масса задач, под которые следует использовать определённые решения — замечу, что туннель не обязан шифроваться. Администраторы которые разбираются в своих потребностях могут приступить к чтению следующего абзаца. Для остальных же хочу разъяснить, что бывает публичный трафик который выныривает из канала сразу в сеть и перенаправляется на публичные ресурсы. Не имеет никакого коммерческого интереса нагружать процессор роутера шифрованием данных от пользователя к публичному серверу и от публичного сервера распространяющего видеопоток к пользователю. Для решения подобной задачи необходим быстрый механизм, а не защищенный. Подобный механизм можно найти в туннелировании трафика между роутерами.
Преамбула. В некоторых городах существуют ресурсы которые доступны только жителям города. Самый частый и простой механизм — это фильтровать пользователей по сетям. Брандмауэр сервера заблокирован для всех, кроме определённого списка сетей. В качестве примера можно назвать игровые серверы, дорожные видеокамеры и пиринговые ресурсы нагружающие сеть. Иногда интересные ресурсы смотрят только в пиринговую сеть и не доступны вне провайдеров подключённых к ней. И ещё один пример, который редко может потребоваться обывателю — это доступ в IPv6-сети. Существует масса туннельных брокеров таких как NetAssist или Hurricane Electric's, которые предоставляют туннельный доступ к своим IPv6-ресурсам.
Простой туннель
Задача. Пробросить подсеть пользователей (на примере Loopback-интерфейсов, но роутинг реальных точно такой же) из одной подсети в другую подсеть с использованием туннеля. И так, легенда роутеров:
Красноярск.
- Белый IP-адрес: 172.16.0.100
- Адрес туннельного интерфейса: 10.0.0.1
- Подсеть: 10.0.1.1
Новосибирск.
- Белый IP-адрес: 172.16.0.200
- Адрес туннельного интерфейса: 10.0.0.2
- Подсеть: 10.0.2.1
Настроим интерфейсы роутеров в соответствии с этой схемой.
Красноярск
gw-krsk>enable gw-krsk#configure terminal gw-krsk(config)#interface FastEthernet0/0 gw-krsk(config-if)#description WAN-KRASNOYARSK gw-krsk(config-if)#ip address 172.16.0.100 255.255.255.0 gw-krsk(config-if)#exit gw-krsk(config)#interface Loopback0 gw-krsk(config-if)#ip address 10.0.1.1 255.255.255.0 gw-krsk(config-if)#exit gw-krsk(config)#ip route 0.0.0.0 0.0.0.0 172.16.0.100 gw-krsk(config)#exit gw-krsk#write
Новосибирск
gw-nsib>enable gw-nsib#configure terminal gw-nsib(config)#interface FastEthernet0/0 gw-nsib(config-if)#description WAN-NOVOSIBIRSK gw-nsib(config-if)#ip address 172.16.0.200 255.255.255.0 gw-nsib(config-if)#exit gw-nsib(config)#interface Loopback0 gw-nsib(config-if)#ip address 10.0.2.1 255.255.255.0 gw-nsib(config-if)#exit gw-nsib(config)#ip route 0.0.0.0 0.0.0.0 172.16.0.200 gw-krsk(config)#exit gw-krsk#write
Всё, стендовые роутеры настроены, роутинг из виртуальных сетей в глобальную работает, но локальные сети не связаны между собой. Создадим туннели между этими роутерами и настроим роутинг между внутренними подсетями.
gw-krsk>enable gw-krsk#configure terminal gw-krsk(config)#interface Tunnel0 gw-krsk(config-if)#description To Novosibirsk gw-krsk(config-if)#ip address 10.0.0.1 255.255.255.252 gw-krsk(config-if)#tunnel mode gre ip gw-krsk(config-if)#tunnel source 172.16.0.100 gw-krsk(config-if)#tunnel destination 172.16.0.200 gw-krsk(config-if)#exit gw-krsk(config)#ip route 10.0.1.0 255.255.255.0 10.0.0.2 gw-krsk(config)#exit gw-krsk#write
Настройки второй стороны.
gw-nsib>enable gw-nsib#configure terminal gw-nsib(config)#interface Tunnel0 gw-nsib(config-if)#description To Krasnoyarsk gw-nsib(config-if)#ip address 10.0.0.2 255.255.255.252 gw-nsib(config-if)#tunnel mode gre ip gw-nsib(config-if)#tunnel source 172.16.0.200 gw-nsib(config-if)#tunnel destination 172.16.0.100 gw-nsib(config-if)#exit gw-nsib(config)#ip route 10.0.2.0 255.255.255.0 10.0.0.1 gw-nsib(config)#exit gw-nsib#write
Теперь две виртуальные подсети видят друг-друга и могут общаться. Но в реальной жизни роль виртуальных интерфейсов выполняют физические интерфейсы.
На практике можно с одной стороны интерфейсы отобразить в подсеть, а с другой вывести через NAT.
Точно таким же методом можно создать отображение IPv6 в сеть провайдера поддерживающего этот протокол.
Отредактировано:2020-09-08 19:42:15