This shows you the differences between two versions of the page.
rl:labs:06:contents:01 [2019/11/02 11:26] georgiana.trifu [01. [10p] Creare VPC] |
rl:labs:06:contents:01 [2023/11/10 17:11] (current) laura.ruse [01. [10p] Configurare și ștergere adrese IP] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ==== 01. [10p] Creare VPC ==== | + | ==== 01. [10p] Configurare și ștergere adrese IP ==== |
+ | Dacă nu ați următit pașii de mai sus, **rulați acum**:<code bash> | ||
+ | # ATENȚIE: update_lab nu funcționează de pe root, folosiți student inițial | ||
+ | student@host:~# update_lab --force | ||
+ | student@host:~# start_lab ip | ||
+ | </code> | ||
- | În secțiunea //Networking// alegem VPC. Există 2 moduri de a crea un VPC în contul tău Amazon: folosind un utilitar automat (care face majoritatea acțiunilor fără ca utilizatorul să controleze) sau alegând specificațiile manual. | + | Dorim, pentru început, să asigurăm conectivitate între stațiile ''host'' și ''red''. În acest tutorial vom folosi suita ''iproute'' de pe Linux pentru a realiza configurările frecvente de nivel 3 (adresare IP). |
- | În //VPC Dashboard//, alegem secțiunea //Your VPCs// și opțiunea **Create VPC**. | + | Vom configura câte o adresă IP din clasa ''192.168.0.0/24'' pe interfețele de legătură dintre stația ''host'' și stația ''red''. Adică între ''host(veth-red)'' (interfața ''veth-red'' de pe stația ''host'') și ''red(red-eth0)'' (interfața ''red-eth0'' de pe stația ''red''). |
- | {{ :rl:labs:06:contents:create_vpc.png |}} | + | Pe interfața ''veth-red'' de pe stația ''host'' vom configura adresa IP ''192.168.0.1'' cu masca ''255.255.255.0'' (''/24'' în forma prefixată):<code bash> |
+ | root@host:~# ip address add 192.168.0.1/24 dev veth-red | ||
+ | </code> | ||
+ | Observați că suita ''iproute2'' (adică utilitarul ''ip'') folosește masca în format prefixat: ''/24''. | ||
- | Numele VPC-ului va fi //studentX_//VPC. Mai departe, vom alege un bloc de adrese IP, de exemplu 192.168.0.0/22. Opțiunea **Tenancy** va fi setată ca //Default//. | + | Imediat după o configurare de rețea rulați o comandă pentru validarea configurării. În cazul nostru este comanda de afișare a configurării de nivel 3 (Rețea), adică a adresei IP:<code bash> |
+ | root@host:~# ip address show dev veth-red | ||
+ | 47: veth-red: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 | ||
+ | link/ether 4e:1b:b8:d9:14:bb brd ff:ff:ff:ff:ff:ff | ||
+ | inet 192.168.0.1/24 scope global veth-red | ||
+ | </code> | ||
+ | |||
+ | Pe interfața ''red-eth0'' de pe stația ''red'' vom configura adresa IP ''192.168.0.2'' cu masca ''255.255.255.0'' (''/24'' în forma prefixată):<code bash> | ||
+ | root@host:~# go red | ||
+ | [...] | ||
+ | root@red:~# ip address add 192.168.0.2/24 dev red-eth0 | ||
+ | root@red:~# ip address show dev red-eth0 | ||
+ | 46: red-eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 | ||
+ | link/ether 00:16:3e:8e:84:21 brd ff:ff:ff:ff:ff:ff | ||
+ | inet 192.168.0.2/24 scope global eth0 | ||
+ | inet6 fe80::216:3eff:fe8e:8421/64 scope link | ||
+ | valid_lft forever preferred_lft forever | ||
+ | </code> | ||
+ | |||
+ | La fel, după o configurare de rețea, am rulat comanda de validare, în cazul acesta ''ip address''. | ||
+ | |||
+ | Pentru a vă putea întoarce la consola stației ''host'', puteți da ''exit'' (sau deschideți / folosiți alt terminal). | ||
+ | |||
+ | Pentru a testa conectivitatea între stațiile ''host'' și ''red'' folosim comanda ''ping'':<code bash> | ||
+ | root@host:~# ping 192.168.0.2 | ||
+ | PING 192.168.0.2 (192.168.0.2) 56(84) bytes of data. | ||
+ | ^C | ||
+ | --- 192.168.0.2 ping statistics --- | ||
+ | 2 packets transmitted, 0 received, 100% packet loss, time 1007ms | ||
+ | </code> | ||
+ | După câteva secunde opriți comanda ''ping'' folosind combinația de taste ''Ctrl+c''. | ||
+ | |||
+ | Observați că nu există conectivitatea între cele două stații: pachetele sunt pierdute în întregime (''100% packet loss''). Motivul este că nu am activat interfețele, ci doar am realizat configurații de nivel 3. | ||
+ | |||
+ | Urmăriți configurația de nivel 2 a interfețelor folosind comanda ''ip link'':<code bash> | ||
+ | root@host:~# ip link show dev veth-red | ||
+ | 10: veth-red: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 | ||
+ | link/ether 3e:03:f0:76:76:ab brd ff:ff:ff:ff:ff:ff | ||
+ | </code> | ||
+ | |||
+ | Observați că interfața nu este activă la nivelul 2 (Legătură de date). Pentru a activa interfața folosiți comanda:<code bash> | ||
+ | root@host:~# ip link set dev veth-red up | ||
+ | </code> | ||
+ | |||
+ | Urmăriți din nou configurația de nivel 2 (Legătură de date) a interfeței ''veth-red'' și observați că acum este parțial ''UP'' (apare și ''UP'' și ''DOWN'' în output-ul comenzii):<code bash> | ||
+ | root@host:~# ip link show dev veth-red | ||
+ | 10: veth-red: <NO_CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000 | ||
+ | link/ether 3e:03:f0:76:76:ab brd ff:ff:ff:ff:ff:ff | ||
+ | </code> | ||
+ | |||
+ | Testați din nou conectivitatea folosiți comanda ''ping''. În continuare nu există conectivitate. Acest lucru și faptul că apărea și ''DOWN'' în output-ul comenzii anterioare se datorează faptului că nu am activat interfața ''red-eth0'' de pe stația ''red''. Interfața ''red-eth0'' de pe stația ''red'' este cea conectată la interfața ''veth-red'' de pe stația ''host''; ambele trebuie să fie activate pentru a avea o conexiune activă. | ||
+ | |||
+ | Pe stația ''red'' verificați configuratia de nivel 2 a interfaței ''red-eth0'' de pe ''red''. Observați că este ''DOWN'' și activați interfața dacă este cazul, folosind comanda<code bash> | ||
+ | root@red:~# ip link set dev red-eth0 up | ||
+ | </code> | ||
+ | |||
+ | Verificați că acum interfața este activă folosind comanda<code bash> | ||
+ | root@red:~# ip link show dev red-eth0 | ||
+ | </code> | ||
+ | Folosiți comanda ''ping'' ca să retestați conectivitatea între stațiile ''host'' și ''red''. | ||
+ | |||
+ | Dorim să revenim la configurația inițială. Pentru acesta rulați o comandă de forma<code> | ||
+ | # ip address flush dev INTERFACE | ||
+ | </code> unde ''INTERFACE'' este interfața interfața ''veth-red'' pe stația ''host'', respectiv ''red-eth0'' pe stația ''red''. Asigurați-vă că nu mai este configurată nicio adresă IP pe interfețe folosind o comandă de forma<code> | ||
+ | # ip address show dev INTERFACE | ||
+ | </code> unde ''INTERFACE'' este interfața interfața ''veth-red'' pe stația ''host'', respectiv ''red-eth0'' pe stația ''red''. |