Proves amb xarxes¶
Les xarxes a IsardVDI dónen lloc a un munt d'escenaris diferents per cada tipus de pràctica.
En aquest manual s'expliquen els diferents tipus de xarxes que es poden configurar als escriptoris virtuals i exemples de casos d'ús per cada tipus.
Primerament s'afegeixen totes les xarxes a un escriptori i conforme es configuren es descriu el seu funcionament i casos d'ús.
Manual d'usuari¶
Assignació de xarxes a l'escriptori¶
1.- Es crea un escriptori en base a una plantilla, o en un escriptori ja creat es modifica l'apartat de Xarxes a Hardware, i s'afegeixen vuit xarxes diferents
2.- S'inicia l'escriptori i s'obre un terminal on es comproven les 8 xarxes afegides, escrivint ip link show
:
isard@ubuntu:~$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:3d:82:1e brd ff:ff:ff:ff:ff:ff
3: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:25:35:1d brd ff:ff:ff:ff:ff:ff
4: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:3a:5e:b9 brd ff:ff:ff:ff:ff:ff
5: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:3b:75:c9 brd ff:ff:ff:ff:ff:ff
6: enp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:03:c8:83 brd ff:ff:ff:ff:ff:ff
7: enp6s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:41:76:68 brd ff:ff:ff:ff:ff:ff
8: enp7s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:19:cb:5f brd ff:ff:ff:ff:ff:ff
9: enp8s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1366 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:25:de:9f brd ff:ff:ff:ff:ff:ff
NOTA: L’ordre de targetes de xarxa que es configuren en l’escriptori a l’Isard és l’ordre de targetes que apareixen configurades al sistema de l’escriptori, per exemple, quan s’escriu al terminal el comandament ip -c a
Renomenament targetes de xarxa¶
Per facilitar l'experiència i agilitzar el treball de l'usuari, es poden modificar els noms de les diferents interfícies que corresponen a les diferents xarxes afegides, amb les nomenades regles udev.
Les regles udev associen el nom del dispositiu original al nom que es volgui modificar.
Es pot fer amb aquest comandament i amb cadascun dels noms descrits al camp NAME
:
sudo bash -c 'cat > /etc/udev/rules.d/70-persistent-net.rules << EOF
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp1s0", NAME="sortida"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp2s0", NAME="cirvianum1"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp3s0", NAME="cirvianum2"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp4s0", NAME="cirvianum3"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp5s0", NAME="cirvianum4"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp6s0", NAME="cirvianum5"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp7s0", NAME="personal"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{type}=="1", KERNEL=="enp8s0", NAME="vpn"
EOF'
isard@ubuntu:~$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: sortida: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:3d:82:1e brd ff:ff:ff:ff:ff:ff
altname enp1s0
3: cirvianum1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:25:35:1d brd ff:ff:ff:ff:ff:ff
altname enp2s0
4: cirvianum2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:3a:5e:b9 brd ff:ff:ff:ff:ff:ff
altname enp3s0
5: cirvianum3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:3b:75:c9 brd ff:ff:ff:ff:ff:ff
altname enp4s0
6: cirvianum4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:03:c8:83 brd ff:ff:ff:ff:ff:ff
altname enp5s0
7: cirvianum5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:41:76:68 brd ff:ff:ff:ff:ff:ff
altname enp6s0
8: personal: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:19:cb:5f brd ff:ff:ff:ff:ff:ff
altname enp7s0
9: vpn: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1366 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:25:de:9f brd ff:ff:ff:ff:ff:ff
altname enp8s0
NOTA: Si posteriorment es treuen, afegeixen, o canvien l’ordre de les targetes corresponents a les interfícies haurem de tornar a modificar aquest fitxer de regles udev. Aquesta configuració funciona per a qualsevol distribució de Linux actual.
Configuració de cada targeta i funcionament de cadascuna¶
Per la explicació es faran servir dos escriptoris configurats amb les mateixes xarxes, nomenats equip1 i equip2. Hi ficarem les mateixes xarxes a ambdós escriptoris per fer proves de connexió de targetes i veure quines permeten comunicació i quines no, com s'estableix aquesta comunicació, i quines adreces es configuren a cadascuna depenent de la xarxa local.
Xarxa default - sortida a internet¶
"Default" permet als escriptoris sortida a Internet amb cada adreça IP aïllada de la resta (escriptoris no es comuniquen). Es fa servir per defecte a totes les plantilles base d'Isard.
Al ser la primera targeta, el DHCP intern d'Ubuntu Desktop li ha creat una configuració (comportament que depèn de cada distribució, no hi ha perquè ser igual a cada escriptori Linux).
isard@equip1:~$ ip a s sortida
2: sortida: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:44:60:ce brd ff:ff:ff:ff:ff:ff
altname enp1s0
inet 192.168.121.141/22 brd 192.168.123.255 scope global dynamic sortida
valid_lft 3493sec preferred_lft 3493sec
inet6 fe80::c184:3254:a9dc:1837/64 scope link noprefixroute
valid_lft forever preferred_lft forever
isard@equip2:~$ ip a s sortida
2: sortida: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:3d:82:1e brd ff:ff:ff:ff:ff:ff
altname enp1s0
inet 192.168.121.176/22 brd 192.168.123.255 scope global dynamic noprefixroute sortida
valid_lft 3068sec preferred_lft 3068sec
inet6 fe80::2cd1:aa3f:8fe3:9268/64 scope link noprefixroute
valid_lft forever preferred_lft forever
Xarxes privades¶
Les xarxes privades estan pensades per muntar escenaris on diferents usuaris comparteixen una mateixa xarxa. Treballen en un segment d’Ethernet aïllat i no hi ha un servidor DHCP que doni adreces IP. Per tant, és recomanable o bé afegir un servidor DHCP a aquestes xarxes o configurar l'adreça IP manualment.
Unmanaged¶
Per les targetes de xarxa noves que no tinguin una configuració, NetworkManager mirarà de crear una nova connexió. Per frenar aquest comportament és possible frenar el NetworkManager i el seu treball que fa automàticament de crear connexions, i fer la targeta "unmanaged".
Una forma de fer-ho és mitjançant regles al fitxer /etc/NetworkManager/conf.d/99-unmanaged-devices.conf
:
sudo bash -c 'cat > /etc/NetworkManager/conf.d/99-unmanaged-devices.conf << EOF
[keyfile]
unmanaged-devices=interface-name:cirvianum1;interface-name:cirvianum2
EOF'
Disabled¶
Una configuració de xarxa és "disabled" quan es deshabilita del sistema i no se'n farà ús. Es pot fer amb nmtui, nmcli o amb el gestor de connexions gràfic.
nmcli con add con-name cirvianum3 ifname cirvianum3 type ethernet ipv4.method disabled ipv6.method disabled connection.autoconnect yes
nmcli con add con-name cirvianum4 ifname cirvianum4 type ethernet ipv4.method disabled ipv6.method disabled connection.autoconnect yes
Servidor DHCP i IP dinàmica¶
Es pot fer aquesta configuració deixant la targeta preparada amb aquest comandament i/o aprofitar una plantilla que ja porti un servidor DHCP preparat.
sudo nmcli con add con-name cirvianum5 ifname cirvianum5 type ethernet method auto connection.autoconnect yes
Es pot editar el fitxer de configuració del servidor DHCP i reiniciar el servei, perquè agafi la configuració adient per a les targetes i xarxa de la pràctica.
Personals¶
Estan pensades per realitzar pràctiques on l'usuari faci servir un segment de xarxa exclusiu entre els seus escriptoris personals; no podrà veure els escriptoris de companys encara que estiguin tots connectats a aquesta mateixa xarxa "Personal".
Es poden deixar configurades plantilles amb adreces IP fixes amb aquesta xarxa i no col·lisionaran entre usuaris.
Per exemple configurarem la ip fixa de la família 172.18.0.101/24:
sudo nmcli con add con-name personal ifname personal type ethernet ip4 172.18.0.101/24 connection.autoconnect yes
VPN¶
Pensada per treballar des de casa, es pot consultar el manual oficial per veure com es configura la VPN als diferents sistemes del client.
És la xarxa que es fa servir pels visors de RDP, i té un MTU més petit degut a que s'encapsulen els paquets xifrats.
Verificació de les targetes base¶
Es fa un reinici i es verifiquen les xarxes.
- "sortida" pot sortir a Internet independentment:
isard@equip11:~$ ip r s default
default via 192.168.120.1 dev sortida proto dhcp metric 102
isard@equip11:~$ ping -c 1 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=120 time=0.916 ms
Es comprova que els dispositius són gestionats pel NetworkManager excepte "cirvianum1" i "cirvianum2":
isard@equip11:~$ sudo nmcli device
DEVICE TYPE STATE CONNECTION
sortida ethernet connectat sortida
cirvianum5 ethernet connectat cirvianum5
personal ethernet connectat personal
vpn ethernet connectat vpn
cirvianum3 ethernet connectat cirvianum3
cirvianum4 ethernet connectat cirvianum4
cirvianum1 ethernet sense gestió --
cirvianum2 ethernet sense gestió --
lo loopback sense gestió --
El pas final amb aquest escriptori és crear una plantilla i així no haver de configurar les diferents xarxes per futures pràctiques.
Pràctica amb dos escriptoris¶
Es creen els escriptoris equip1_8xarxes i equip2_8xarxes en base a la mateixa plantilla creada al pas anterior i s'arrenquen juntament amb un escriptori que farà de servidor DHCP:
- Des de l'equip2 es pot fer ping a la "Personal" de l'equip1:
isard@equip2:~$ ping -c 1 172.18.0.101
PING 172.18.0.101 (172.18.0.101) 56(84) bytes of data.
64 bytes from 172.18.0.101: icmp_seq=1 ttl=64 time=0.038 ms
- Es pot accedir a la targeta "cirvanium5" de l'equip1 amb una IP dinàmica:
isard@equip2:~$ ip a s cirvianum5
7: cirvianum5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:0c:ed:38 brd ff:ff:ff:ff:ff:ff
altname enp6s0
inet 192.168.220.109/23 brd 192.168.221.255 scope global dynamic noprefixroute cirvianum5
valid_lft 6844sec preferred_lft 6844sec
inet6 fe80::fb30:446:f480:f5fd/64 scope link noprefixroute
valid_lft forever preferred_lft forever
isard@equip2:~$ ping -c 1 192.168.220.108
PING 192.168.220.108 (192.168.220.108) 56(84) bytes of data.
64 bytes from 192.168.220.108: icmp_seq=1 ttl=64 time=13.1 ms
- Es pot configurar una direcció IP fixa a "cirvianum3" de l'equip1 mitjançant entorn gràfic, per exemple l’adreça 192.168.11.101/24:
- Es fa el mateix a l’equip2 amb la interfície nmtui:
sudo nmtui
isard@equip2:~$ ip a s cirvianum3
5: cirvianum3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:44:94:bb brd ff:ff:ff:ff:ff:ff
altname enp4s0
inet 192.168.11.102/24 brd 192.168.11.255 scope global noprefixroute cirvianum3
valid_lft forever preferred_lft forever
isard@equip2:~$ ping -c 1 192.168.11.101
PING 192.168.11.101 (192.168.11.101) 56(84) bytes of data.
64 bytes from 192.168.11.101: icmp_seq=1 ttl=64 time=11.0 ms
- Finalment, les xarxes cirvianum1 i cirvianum2 estan fora del control del NetworkManager i han arrencat down, com es veu aquí amb cirvanium1:
isard@equip2:~$ ip link show cirvianum1
3: cirvianum1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 52:54:00:61:ff:bd brd ff:ff:ff:ff:ff:ff
altname enp2s0
S'activen manualment i configuren amb el terminal sense interferències amb el servei de NetworkManager.
S'aixequen i configuren dues adreces IP corresponents per a cada interfície, de diferents families i classes, i s'efectua la comunicació:
isard@equip1:~$ sudo ip link set cirvianum1 up
isard@equip1:~$ sudo ip a a 192.168.21.101/24 dev cirvianum1
isard@equip1:~$ sudo ip a a 172.19.0.101/16 dev cirvianum1
isard@equip1:~$ ip a s cirvianum1
3: cirvianum1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:7b:79:ee brd ff:ff:ff:ff:ff:ff
altname enp2s0
inet 192.168.21.101/24 scope global cirvianum1
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:fe7b:79ee/64 scope link
valid_lft forever preferred_lft forever
isard@equip2:~$ sudo ip link set cirvianum1 up
isard@equip2:~$ sudo ip a a 192.168.21.102/24 dev cirvianum1
isard@equip2:~$ sudo ip a a 172.19.0.102/16 dev cirvianum1
isard@equip2:~$ ip a s cirvianum1
3: cirvianum1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:61:ff:bd brd ff:ff:ff:ff:ff:ff
altname enp2s0
inet 192.168.21.102/24 scope global cirvianum1
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:fe61:ffbd/64 scope link
valid_lft forever preferred_lft forever
isard@equip2:~$ ping -c 1 192.168.21.101
PING 192.168.21.101 (192.168.21.101) 56(84) bytes of data.
64 bytes from 192.168.21.101: icmp_seq=1 ttl=64 time=11.1 ms
isard@equip2:~$ ping -c 1 172.19.0.101
PING 172.19.0.101 (172.19.0.101) 56(84) bytes of data.
64 bytes from 172.19.0.101: icmp_seq=1 ttl=64 time=0.263 ms
isard@equip2:~$ sudo ip address flush dev cirvianum1
isard@equip2:~$ ip a s cirvianum1
3: cirvianum1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:61:ff:bd brd ff:ff:ff:ff:ff:ff
altname enp2s0