06. [10p] Depanare problemă de configurare adresă IP

Rulați scriptul de pregătire cu noul argument ex6:

root@host:~# start_lab ip ex6

În urma rulării scriptului a fost repornită stația red și au fost refăcute configurațiile. Va trebui să vă reconectați pe stația red folosind comanda:

root@host:~# go red

Scriptul configurează adresa IP 7.7.7.1 pe interfața veth-red a stației host și adresa IP 7.7.7.2 pe interfața red-eth0 a stației red. Pentru a afișa configurația IP pe cele două interfețe folosiți comenzile:

root@host:~# ip address show veth-red
47: veth-red: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 4e:1b:b8:d9:14:bb brd ff:ff:ff:ff:ff:ff
    inet 7.7.7.1/32 scope global veth-red
root@red:~# ip address show red-eth0
46: red-eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:16:3e:8e:84:21 brd ff:ff:ff:ff:ff:ff
    inet 7.7.7.2/24 scope global red-eth0
    inet6 fe80::216:3eff:fe8e:8421/64 scope link 
       valid_lft forever preferred_lft forever

Folosiți comanda ping pentru a testa conectivitatea între cele două adrese IP (7.7.7.1 și 7.7.7.2) pe cele două stații. Observați ca nu există conectivitate.

Pentru a depana această problemă, urmărim tabela de rutare a fiecărei stații:

root@red:~# ip r s
default via 7.7.7.1 dev red-eth0 
7.7.7.0/24 dev red-eth0 proto kernel scope link src 7.7.7.2 
root@host:~# ip r s
default via 10.9.0.1 dev eth0 
10.9.0.0/16 dev eth0 proto kernel scope link src 10.9.3.210 
169.254.169.254 via 10.9.0.100 dev eth0 
192.168.2.0/24 dev veth-green proto kernel scope link src 192.168.2.1 
192.168.3.0/24 dev veth-blue proto kernel scope link src 192.168.3.1

Observați că pe host nu apare ruta relevantă (7.7.7.0/24) în tabela de rutare. Fie interfața este dezactivată, fie configurația este greșită. Uitați-vă cu atenție la informațiile de nivel 3:

root@host:~# ip address show veth-red
47: veth-red: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 4e:1b:b8:d9:14:bb brd ff:ff:ff:ff:ff:ff
    inet 7.7.7.1/32 scope global veth-red
root@red:~# ip address show red-eth0
46: red-eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:16:3e:8e:84:21 brd ff:ff:ff:ff:ff:ff
    inet 7.7.7.2/24 scope global red-eth0
    inet6 fe80::216:3eff:fe8e:8421/64 scope link 
       valid_lft forever preferred_lft forever

Putem observa că interfețele sunt active (UP). Însă una dintre aceaste adrese (7.7.7.1) are masca /32. Acest lucru înseamnă că nu pot comunica în rețea unele cu altele și explică și absența rutei relevante din tabela de rutare.

Repararea acestei greșeli se face prin adăugarea adresei IP cu masca corectă 7.7.7.1/24 pe interfața veth-red de pe host. Verificați că aveți conectivitate între host și red.

Nu uitați să ștergeți adresa greșită folosind comanda ip address delete 7.7.7.1/32 dev veth-red. Dacă nu ștergeți adresa greșită veți avea 2 adrese IP pe interfață, una cu masca /24 și alta cu mască /32

O greșeală relativ frecventă în configurarea adresei IP în Linux este omiterea măștii de rețea. Aveți în vedere să nu omiteți masca în momentul în care configurați adrese IP pe interfețe în Linux.

Listarea tabelei de rutare a unei stații este printre primii pași care trebuie urmați pentru depanarea unei probleme de conectivitate.

rl/labs/06/contents/06.txt · Last modified: 2023/11/15 09:00 by laura.ruse
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0