sâmbătă, 14 iunie 2014

SpeedTouch ST516 v6 - Router-on-a-stick - Partea 1

SpeedTouch ST516 v6

Router-on-a-stick

Partea 1


Introducere

În prima parte a acestei serii, îmi propun să demonstrez capabilitățile routerului ST516 v6 în ceea ce privește routarea între VLAN-uri, într-o topologie router-on-a-stick. Conectarea fizică la rețele se va face prin intermediul unicei interfețe FastEthernet de care echipamentul dispune. Folosim suplimentar, pentru separarea/agregarea VLAN-urilor precum și pentru posibilitatea de interconectare a mai multor dispozitive un switch cu management.

Topologia folosită pentru demonstrație poate fi descrisă astfel:
  • Două reţele nivel 3 (două reţele IP, versiunea 4 - IPv4) pe care dorim să le interconectăm.
  • Adresarea celor două reţele este următoarea:
    • 192.168.10.0 /24, pentru prima reţea (o vom denumi NET A);
    • 192.168.20.0 /24, pentru a doua reţea (o vom denumi NET B).
  • Pentru a interconecta cele două rețele nivel 3 avem nevoie de un router, echipament care să aibă câte o interfață conectată în fiecare rețea. Dar echipamentul nostru este dotat cu o singură interfață fizică FastEthernet (este vorba de portul dedicat în general pentru LAN). Soluția este folosirea acestei interfețe pentru un link de tip trunk (coloană) prin care să transportăm frame-urilor a două interfețe virtuale (VLAN-uri) către un switch. Switch-ul va asigura agregarea/distribuirea acestor VLAN-uri. Pentru exemplul de față am folosit un switch cu management, Cisco 3524XL. Se poate folosi în practică orice switch cu management care știe încapsulare 802.1Q (3Com, HP, D-Link, AlliedTelesin, Huawei, ZTE, CTS, etc...). Se subînțelege că routerul nostru, ST516 v6, respectă standardul de încapsulare 802.1Q. Pentru detalii despre 802.1Q consultați materialul de aici.
  • Am ales să folosesc două VLAN-uri:
    • VLAN10 (id 10) pentru NET A;
    • VLAN20 (id 20) pentru NET B;
  • Ambele VLAN-uri vor fi transportate pe link-ul trunk folosind frame-uri etichetate (tagged) 802.1Q.
  • Grafic, topologia se prezintă astfel:

Ceea ce dorim noi să facem pe routerul ST516 v6 este crearea a două interfețe nivel 2 virtuale (VLAN-uri), iar peste aceste interfețe să ridicăm interfețe nivel 3 (SVI-uri). Pachetele (frame-urile) celor două rețele vrem să fie agregate pe singura interfață fizică FastEthernet disponibilă.

Fizic vom conecta portul LAN (FastEthernet) al routerului ST516 v6 la portul cu numărul 24 (FastEthernet0/24) al switchului cu management Cisco 3524XL. Link-ul între aceste două echipamente va fi de tip trunk, iar prin el vom transporta VLAN-urile 10 și 20. ST516 v6 va asigura routarea între cele două VLAN-uri.

Switchul va asigura separarea și agregarea celor două VLAN-uri. În cazul de față, portul 1 va face parte din VLAN-ul 10 (adică din NET A), portul 2 va face parte din VLAN-ul 20 (adică din NET B) iar portul 24 va fi trunk, asigurând transportul ambelor VLAN-uri către routerul ST516 v6 care va asigura routarea între cele două rețele.


Configurarea Switchului:

La acest pas trebuie să asigurăm următoarele:
  • Existența pe switch a VLAN-urilor 10 și 20.
  • Apartenența a cel puțin un port în fiecare din cele două VLAN-uri (implicit apartenența porturilor în rețelele asociate). În cazul nostru am asignat câte un singur port în fiecare rețea (portul 1 în NET A și portul 2 în NET B).
  • Configurarea unui port ca trunk (coloană) și transportarea prin acesta a frame-urilor provenind din cele două rețele (VLAN 10 și VLAN 20).
Evident, configurarea va fi specifică pentru modelul de switch pe care îl veți folosi. În cazul echipamentului pe care l-am folosit eu, configurarea se face din linie de comandă, iar comenzile necesare sunt:
  • enable
  • vlan database
    • vlan 10
    • vlan 20
    • exit
  • configure terminal
    • interface FastEthernet0/1
      • switchport access vlan 10
    • interface FastEthernet0/2
      • switchport access vlan 20
    • interface FastEthernet0/24
      • switchport trunk encapsulation dot1q
      • switchport trunk allowed vlan add 10
      • switchport trunk allowed vlan add 20
      • switchport mode trunk
      • end
  • write

Nu intru în alte detalii suplimentare privind configurarea switchului, pentru că nu face parte din subiectul acestui articol. Cert este că modul de configurare diferă de la model la model. Unele switch-uri au interfață grafică (web) de configurare, altele au CLI, asemănător sau nu cu cel al echipamentului Cisco pe care l-am folosit eu. Consultați documentația echipamentului pe care îl folosiți efectiv.


Configurarea routerului ST516 v6:

1. Setări de bază:
Să trecem direct la subiect. Mai întâi ne asigurăm că avem instalată versiunea 7.4.3.2.0 a firmware-ului și resetăm routerul la setările din fabrică. Ne conectăm la echipament cu ajutorul unui PC direct conectat în portul LAN. Apoi accesăm CLI-ul echipamentului (prin telnet, instrucțiuni detaliate aici) și executăm următoarele comenzi pentru a pune baza configurărilor ulterioare:
  • env set var=SESSIONTIMEOUT value=0
  • ppp relay flush
  • ppp flush
  • eth flush
  • atm flush
  • atm phonebook flush
  • ip ipdelete addr=10.0.0.138
  • saveall

2. VLAN-uri:
Configurăm bridge-ul intern al routerului să suporte VLAN-uri:
  • eth bridge config vlan=enabled
Apoi creăm VLAN-urile necesare:
  • eth vlan add name=VLAN10 vid=10
  • eth vlan add name=VLAN20 vid=20
Configurăm interfața OBC și interfața eth1 TAGGED (etichetate) pentru VLAN-urile noastre:
  • eth bridge vlan ifadd intf=OBC name=VLAN10 untagged=disabled
  • eth bridge vlan ifadd intf=ethport1 name=VLAN10 untagged=disabled
  • eth bridge vlan ifadd intf=OBC name=VLAN20 untagged=disabled
  • eth bridge vlan ifadd intf=ethport1 name=VLAN20 untagged=disabled
Pentru fiecare VLAN creăm o interfață logică de tip ethernet care să comunice folosind bridge-ul intern și îi asociem id-ul VLAN-ului corespunzător:
  • eth ifadd intf=NET_A
  • eth ifconfig intf=NET_A dest=bridge vlan=VLAN10
  • eth ifattach intf=NET_A
  • eth ifadd intf=NET_B
  • eth ifconfig intf=NET_B dest=bridge vlan=VLAN20
  • eth ifattach intf=NET_B
În momentul de față avem funcționale două interfețe virtuale nivel 2, NET_A și NET_B, ambele comunicând în exterior prin intermediul interfeței fizice eth1 (portul LAN al echipamentului) cu ajutorul frame-urilor etichetate în vlan 10 respectiv 20.

3. Interfețele nivel 3:
Pentru ambele interfețe ethernet virtuale (NET_A și NET_B) create la pasul anterior creăm și adresăm conform topologiei interfețele nivel 3 (IP):
  • ip ifadd intf=IP_NET_A dest=NET_A
  • ip ifconfig intf=IP_NET_A group=lan
  • ip ipadd intf=IP_NET_A addr=192.168.10.1/24 addroute=enabled
  • ip ifattach intf=IP_NET_A
  • ip ifadd intf=IP_NET_B dest=NET_B
  • ip ifconfig intf=IP_NET_B group=lan
  • ip ipadd intf=IP_NET_B addr=192.168.20.1/24 addroute=enabled
  • ip ifattach intf=IP_NET_B

4. Finalizarea configurației:
Salvăm configuraţia:
  • saveall
Ulterior deconectăm routerul de la PC-ul pe care l-am folosit la configurarea inițială și îl conectăm conform topologiei prezentată în introducere. De pe un PC aflat într-una din cele două rețele (NET A sau NET B) și adresat corespunzător la nivel 3 (IP, SubnetMask și DefaultGateway setate corespunzător pentru rețeaua în care este conectat) accesăm din nou echipamentul prin telnet (! telnet 192.168.10.1 sau telnet 192.168.20.1 !) și executăm următoarele instrucțiuni:
  • ip ifdelete intf=LocalNetwork
  • saveall
Instrucțiunile de mai sus șterg de pe echipament interfața nivel 3 care există implicit în setările inițiale ale echipamentului, și de care am avut nevoie în vederea accesării și configurării. În momentul de față nu mai avem nevoie de ea, pentru că am configurat alte interfețe ce pot fi folosite în acest scop.

5. Opțional:
Există, evident, o multitudine de posibilități când vorbim de funcțiile pe care le putem configura pe routerul ST516 v6.

Una din funcțiile foarte utile în topologia noastră ar fi serverul DHCP, care să aloce corespunzător setările necesare hosturilor ce vor fi conectate în cele două rețele. Astfel, comenzile următoare vor asigura această funcție. Mai exact, routerul va răspunde cererilor DHCP cu informațiile corecte, necesare hosturilor, pentru fiecare din cele două rețele interconectate. Alocarea adreselor va începe, pentru fiecare rețea în parte, începând de la a 10-a adresă disponibilă (192.168.x.10):
  • dhcp server pool add name=DHCP_NET_A
  • dhcp server pool add name=DHCP_NET_B
  • dhcp server pool config name=DHCP_NET_A intf=IP_NET_A poolstart=192.168.10.10 poolend=192.168.10.254 netmask=24 gateway=192.168.10.1 server=192.168.10.1 leasetime=86400
  • dhcp server pool config name=DHCP_NET_B intf=IP_NET_B poolstart=192.168.20.10 poolend=192.168.20.254 netmask=24 gateway=192.168.20.1 server=192.168.20.1 leasetime=86400
  • dhcp relay ifconfig intf=IP_NET_A relay=enabled
  • dhcp relay ifconfig intf=IP_NET_B relay=enabled
  • dhcp relay add name=IP_NET_A-to-local
  • dhcp relay add name=IP_NET_B-to-local
  • dhcp relay modify name=IP_NET_A-to-local addr=127.0.0.1 intf=IP_NET_A giaddr=192.168.10.1
  • dhcp relay modify name=IP_NET_B-to-local addr=127.0.0.1 intf=IP_NET_B giaddr=192.168.20.1
  • saveall

Cam asta este tot. În momentul de faţă cele două reţele nivel 3 sunt interconectate prin intermediul routerului ST516 v6, fiind folosită pentru conectarea fizică singura interfață FastEthernet disponibilă. Am creat două interfețe nivel 2 virtuale (2 VLAN-uri) agregate printr-un link trunk către switch-ul cu management. Switch-ul asigură separarea VLAN-urilor prin asignarea porturilor corespunzătoare fiecărui VLAN. Legătura spre router se face printr-un port configurat ca trunk (coloană) folosind încapsulare 802.1Q. Prin acest port sunt transportate ambele VLAN-uri. Pe router, peste cele două rețele nivel 2 virtuale s-au ridicat interfețe nivel 3 (SVI-uri) adresate IP, configurate static (manual). De asemenea s-a configurat, opțional, serverul DHCP încorporat în router pentru a asigura adresarea IP a hosturilor din cele două rețele.

Pe scurt comunicarea între cele două rețele are loc astfel:
  • Un pachet din NET A destinat unui host din NET B este trimis către DefaultGateway-ul rețelei NET A (192.168.10.1, interfața IP a routerului din VLAN10). Frame-ul ajunge la switch pe interfața FastEthernet0/1. Switch-ul va trimite frame etichetat VLAN10 prin link-ul trunk (interfața FastEthernet0/24).
  • Ajuns la routerul ST516 v6, pachetul este analizat și se stabilește că este destinat unui host din NET B, rețea la care routerul este direct conectat. Routerul va trimite frame-ul înapoi spre switch, folosind același link trunk (link-ul spre interfața FastEthernet0/24), dar îl va eticheta în VLAN20.
  • Ajuns la switch, frame-ul va fi trimis spre hostul corespunzător din NET B (neetichetat) folosind interfața FastEthernet0/2.


Trivia:

În exemplul prezentat în acest episod, am interconectat 2 reţele IP folosind echipamentul SpeedTouch ST516 v6 configurat ca router-on-a-stick cu ajutorul VLAN-urilor și a încapsulării 802.1Q.

Capabilitățile echipamentului sunt mult mai puternice de atât. La fel ca în cazul routerului înrudit, ST546 v6, care a putut fi configurat ca gateway de internet pentru diferite scenarii (ip fix, ip dinamic, PPPoE), folosind mecanismul descris în acest articol este posibilă configurarea routerului ST516 v6 pentru exact aceleași scenarii, folosind bineînțeles un switch cu management care să asigure separarea și agregarea VLAN-urilor spre router.

Mai jos aveți la dispoziție câte un fișier text pentru fiecare din cele 3 scenarii de conectare la internet folosind routerul ST516 v6 ca router ethernet, alături de un switch cu management care să știe încapsulare 802.1Q. Fișierul conține atât comenzile necesare, cât și un minim de îndrumări. Atenție! Se presupune respectarea topologiei din acest articol, diferența fiind aceea că rețeaua NET B este transformată în WAN, și nu mai este adresată IP de către noi, ci folosim informații furnizate de către ISP.



Încheiere:

Aici se încheie primul episod dedicat echipamentului SpeedTouch ST516 v6. Am convingerea că exemplele date relevă clar capacităţile extraordinare ale acestui echipament, dat fiind scopul pentru care acesta a fost comercializat.

Aşa cum am spus şi în preview-ul dedicat echipamentului, voi continua seria cu un episod în care vă voi arăta cum se configurează acesta pentru a fi folosit ca router-on-a-stick, dar folosind un switch fără management pentru conectarea hosturilor (fără posibilitatea de separare a VLAN-urilor pe un echipament intermediar).


Numai bine!