пятница, 30 марта 2012 г.

EoIP на Mikrotik

EoIP туннель на микротике.
Объединяем удаленные филиалы.

Есть куча вариантов объединения удаленных филиалов, можно делить и на подсети, можно использовать общее адресное пространство.
Также много и способов организации каналов передачи данных между этими филиалами,
тут вам и обычные PPP протоколы pptp,l2tp,openvpn и множество дополнительных туннелей, например IPIP и EoIP(все в терминологии mikrotik).
Хочу сейчас остановиться на последнем, а именно на Ethernet over IP (EoIP).
Из названия видно, что такой туннель позволяет сэмулировать сеть на втором уровне модели OSI используя сетевой уровень.
Понятнее можно представить, что обычный IP протокол работает поверх Ethernet. А тут все почти наоборот. Это дает возможность объеденить разные точки в один широковещательный домен пробрасывая тунель через IP сети.
В примере будет два удаленных офиса, между которыми находится один роутер провайдера. Таких роутеров может быть сколько угодно, и не от одного провайдера расположенных на значительном удалении друг от друга.
Главное чтобы между офисами был канал связи, а через сколько хопов он проходит уже неважно.
Для простоты будет один роутер.

Итак, имеем два роутера R1 и R2, между ними R3. Нам нужно объденить офис 1 и офис 2 между собой, и сделать так чтобы у них была единая адресация сети 192.168.100.0/24.
Первоначальные настройки для R1
[admin@MikroTik] > /ip address add address=10.10.38.101/8
[admin@MikroTik] > /ip address add address=192.168.100.1/24


настройки для R2
[admin@MikroTik] > /ip address add address=11.10.24.101/8
[admin@MikroTik] > /ip address add address=192.168.100.2/24


настройки для R3
[admin@MikroTik] > /ip address add address=10.10.38.100/8
[admin@MikroTik] > /ip address add address=11.10.24.100/8


Адреса теперь есть, осталось прописать маршруты.
R1:
/ip route add dst-address=11.0.0.0/8 gateway=10.10.38.100
R2:
/ip route add dst-address=10.0.0.0/8 gateway=11.10.24.100

Проверяем доступность с роутера R2

[admin@MikroTik] > tool traceroute 10.10.38.101
ADDRESS STATUS
1 11.10.24.100 1ms 1ms 1ms
2 10.10.38.101 2ms 1ms 1ms


Можно уже создавать туннели EoIP
R1:
/interface eoip add remote-address=11.10.24.101 tunnel-id=10 disabled=no

R2:
/interface eoip add remote-address=10.10.38.101 tunnel-id=10 disabled=no

remote-address это адрес удаленного роутера с которым мы хотим создать туннель
tunnel-id идентификатор туннеля одинаковый с обоих сторон
disabled=no указывает на то что мы создаем туннель который сразу будет активным
еще есть другие параметры, например name, но в данном примере роутер поставил имя по умолчанию.
Для R2 я сделал несколько скриншотов, того как создается туннель через winbox
Если все сделано верно, то туннель поднимается. Проверить статус можно через команду





[admin@MikroTik] > /interface eoip print
Flags: X - disabled, R - running
0 R name="eoip-tunnel1" mtu=1500 mac-address=02:84:56:52:3F:AD arp=enabled
remote-address=10.10.38.101 tunnel-id=10


Буква R говорит что связь есть и туннель работает.
Скриншот с winbox


Дальше нам нужно объединить как раз таки в одну сеть два филиала.
Для этого создадим мост между интерфейсами EoIP и ethernet интерфейсами роутеров.
R1:
/interface bridge add
/interface bridge port add bridge=bridge1 interface=ether1
/interface bridge port add bridge=bridge1 interface= eoip-tunnel1


R2:
/interface bridge add
/interface bridge port add bridge=bridge1 interface=ether1
/interface bridge port add bridge=bridge1 interface= eoip-tunnel1


Для R2 используя winbox




Проверяем настройки моста и портов,туннеля на R1 и R2

[admin@MikroTik] > /interface bridge print
Flags: X - disabled, R - running
0 R name="bridge1" mtu=1500 arp=enabled mac-address=FE:31:4C:F1:2C:A7
protocol-mode=none priority=0x8000 auto-mac=yes
admin-mac=00:00:00:00:00:00 max-message-age=20s forward-delay=15s
transmit-hold-count=6 ageing-time=5m

/interface bridge port print


Для тестирования я сделал на каждом роутере по одному адресу из сети 192.168.100.0/24.
Сделаем ping с обоих роутеров по их внутренним локальным адресам, а также traceroute чтобы было видно что эти хосты видят друг друга как в одном сегменте.

R1:
[admin@MikroTik] /tool> flood-ping 192.168.100.2
sent: 2
received: 1
min-rtt: 1
avg-rtt: 1
max-rtt: 1

sent: 500
received: 500
min-rtt: 0
avg-rtt: 0
max-rtt: 2

[admin@MikroTik] /tool> traceroute 192.168.100.2
ADDRESS STATUS
1 192.168.100.2 1ms 1ms 1ms


R2:
[admin@MikroTik] /tool> flood-ping 192.168.100.1
sent: 2
received: 1
min-rtt: 1
avg-rtt: 1
max-rtt: 1

sent: 500
received: 500
min-rtt: 0
avg-rtt: 0
max-rtt: 2

[admin@MikroTik] /tool> traceroute 192.168.100.1
ADDRESS STATUS
1 192.168.100.1 4ms 3ms 2ms




Ну вот вроде и все. EoIP довольно хорош и прост. единственное что туннель отъедает часть ширины канала, но чем-то придется платить за удобство.

2 комментария:

  1. А что делать, если филиалов не 2 а 3? Какая логика настройки тогда будет?

    ОтветитьУдалить
  2. А у меня на хосты в подсетях пинг идёт, а на роутеры нет. ЧЯДНТ?

    ОтветитьУдалить