IS-IS

Материал из xapmc.net
Перейти к: навигация, поиск
Задача
Настроить смежность между juniper srx100 и quagga. Организовать доступность между debian 8 (ноутбук) и win 2012 (ноутбук)
Решение
Воспользуемся для этой задачи протоколом is-is

Оборудование, которым располагаем

Вендор Модель
1. juniper srx100
2. quagga (debian) 0.99.23.1-1(debian 8)
3. cisco 2960
4. cisco 3750
Схема сети

Is-is srx100 quagga.png

Debian 8
Установка quagga
aptitude install quagga
Создадим файлы для quagga.
touch zebra.conf
touch isisd.conf
Дадим права на файлы.
chown quagga:quagga /etc/quagga/zebra.conf
chown quagga:quagga /etc/quagga/isisd.conf
chmod 640 /etc/quagga/*.conf
Изменим настройки файла daemons.
zebra=yes
isisd=yes
Поставим "yes".
Отредактируем файлы zebra.conf, isisd.conf

zebra.conf

hostname router
password xapmcnet
enable password xapmcnet

isisd.conf

hostname router
password xapmcnet
enable password xapmcnet
Где xapmcnet должен стоять ваш пароль.
В debian8 включаем forward на лету
sysctl -w net.ipv4.ip_forward=1
В /etc/sysctl.conf снять коммент с
net.ipv4.ip_forward=1
Добавляем в isisd.conf
!
! Zebra configuration saved from vty
!   2015/09/11 10:42:50
!
hostname router
password xapmcnet
enable password xapmcnet
!
interface eth0
 ip router isis xapmcnet
!
interface eth1
 ip router isis xapmcnet
!
interface lo
 ip router isis xapmcnet
 isis passive
!
interface lo1
!
!
router isis xapmcnet
 net 49.0001.0192.0168.0000.00
 metric-style wide
!
line vty
Здесь мы указываем на каких интерфейсах включить is-is. Это eth0, eth1.
Даем нашему is-is роутеру имя xapmcnet. Добавляем iso адрес. Первый две цифры зарезервированы. 0001 это что-то типа арии в OSPF. Дальше идет уникальный адрес. Адрес заканчивается двумя нулями, которые тоже зарезервированы. Метрика wide расширяет TLV.
Настройка интерфейсов на debian
 ip a show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:50:56:93:35:a6 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.147/24 brd 192.168.0.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe93:35a6/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:50:56:93:04:c6 brd ff:ff:ff:ff:ff:ff
    inet 192.168.25.1/24 brd 192.168.25.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::250:56ff:fe93:4c6/64 scope link
       valid_lft forever preferred_lft forever
Настройка debian8 на ноутбуке
ifconfig eth0 192.168.24.23/24
ip r a 0.0.0.0/0 via 192.168.24.24
Настройка win 2012
Указать адрес 192.168.25.2. Маска 255.255.255.0. Шлюз поставить 192.168.25.1.


Настройка juniper srx100
Разрешим трафик из trust в trust.
set security policies from-zone trust to-zone trust policy trust-to-trust match source-address any
set security policies from-zone trust to-zone trust policy trust-to-trust match destination-address any
set security policies from-zone trust to-zone trust policy trust-to-trust match application any
set security policies from-zone trust to-zone trust policy trust-to-trust then permit
Разрешим forwarding iso.
set security forwarding-options family iso mode packet-based
Добавим поддержку iso адресации на интерфейсы fe-0/0/1 и fe-0/0/2.
Настроим NET адрес на lo0 интерфейсе (интерфейс обратной петли).
Добавим в протокол is-is интерфейсы fe-0/0/1 и fe-0/0/2.
set interfaces fe-0/0/1 unit 0 family inet address 192.168.0.117/24
set interfaces fe-0/0/1 unit 0 family iso
set interfaces fe-0/0/2 unit 0 family inet address 192.168.24.24/24
set interfaces fe-0/0/2 unit 0 family iso
set interfaces lo0 unit 0 family inet address 192.168.23.1/24
set interfaces lo0 unit 0 family iso address 49.0001.0192.0168.0001.00
set protocols isis interface fe-0/0/1.0
set protocols isis interface fe-0/0/2.0
set protocols isis interface lo0.0
Настройка cisco 2960
conf t
vlan 999
interface FastEthernet0/23
 switchport access vlan 999
 switchport mode access

interface FastEthernet0/24
 switchport access vlan 999
 switchport mode access
Настройка cisco 3750
conf t
vlan 1001
interface GigabitEthernet2/0/21
 switchport access vlan 1001
 switchport mode access

interface GigabitEthernet2/0/22
 switchport access vlan 1001
 switchport mode access
Проверка juniper srx100
show isis adjacency brief
Interface             System         L State        Hold (secs) SNPA
fe-0/0/1.0            router         1  Up                   29  0:50:56:93:35:a6
fe-0/0/1.0            router         2  Up                   29  0:50:56:93:35:a6

 show isis interface brief
IS-IS interface database:
Interface             L CirID Level 1 DR        Level 2 DR        L1/L2 Metric
fe-0/0/1.0            3   0x2 srx100.02         srx100.02              10/10
fe-0/0/2.0            3   0x1 srx100.00         srx100.00              10/10
lo0.0                 0   0x1 Passive           Passive                 0/0
Проверка quagga
show isis neighbor
Area xapmcnet:
  System Id           Interface   L  State        Holdtime SNPA
  srx100              eth0        1  Up           9        3c94.d5b9.cf01
  srx100              eth0        2  Up           7        3c94.d5b9.cf01

 show isis interface
Area xapmcnet:
  Interface   CircId   State    Type     Level
  eth0        0x82     Up       lan      L1L2
  eth1        0x1      Up       lan      L1L2
  lo          0x81     Up       loopback L1L2

Проверка доступности между хостами
Проверим с ноутбука debian8.
root@netng0:/home/xapmc# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:c0:9f:db:08:e6
          inet addr:192.168.24.23  Bcast:192.168.24.255  Mask:255.255.255.0
          inet6 addr: fe80::2c0:9fff:fedb:8e6/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1150698 errors:0 dropped:0 overruns:0 frame:0
          TX packets:140395 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:108623951 (103.5 MiB)  TX bytes:19902018 (18.9 MiB)
          Interrupt:16

root@netng0:/home/xapmc# traceroute -n 192.168.25.2
traceroute to 192.168.25.2 (192.168.25.2), 30 hops max, 60 byte packets
 1  192.168.24.24  0.960 ms  0.928 ms  0.891 ms
 2  192.168.0.147  4.723 ms  5.279 ms  5.254 ms
 3  192.168.25.2  5.242 ms * *
root@netng0:/home/xapmc# ping -s 1500 192.168.25.2
PING 192.168.25.2 (192.168.25.2) 1500(1528) bytes of data.
1508 bytes from 192.168.25.2: icmp_seq=1 ttl=126 time=2.07 ms
1508 bytes from 192.168.25.2: icmp_seq=2 ttl=126 time=2.14 ms
1508 bytes from 192.168.25.2: icmp_seq=3 ttl=126 time=2.13 ms
^C
--- 192.168.25.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 2.070/2.117/2.147/0.050 ms
Видим, что ICMP отработал с размером 1500 как надо. Трассировка показала наш маршрут, также как надо.
В этой задаче мы обошли стороной понятие leve1, leve2, leve1-level2.
Эти вещи мы рассмотрим в другой задаче для ISP.
Задача решена.