---
tags: SK, w3
---
# Sieci komputerowe warsztaty 3
## KONFIGURACJA POCZĄTKOWA

1. :rocket: Na każdej z czterech maszyn wirtualnych Virbian1 –Virbian4 powinny być dwa interfejsy połączone z odpowiednimi sieciami wirtualnymi remote1–remote4. Interfejs połączony z siecią remotei należy w maszynie wirtualnej nazwać enp-remi tak jak na rysunku powyżej.
2. :rocket: Aktywuj interfejsy sieciowe enp-rem1, enp-rem2 i enp-rem3; oba interfejsy enp-rem4 pozostaw nieaktywne. Aktywnym interfejsom przypisz adresy IP jak na rysunku powyżej. Zauważ, że karty podpięte do sieci remotei mają adresy IP z klasy 192.168.i.0/24. Uruchom Wiresharka na wszystkich maszynach nasłuchującego na wszystkich interfejsach.
3. :rocket:Na maszynie Virbian1 ustaw bramę domyślną na 192.168.1.2. Sprawdź, że z tej maszyny możesz z powodzeniem pingnąć oba adresy IP maszyny Virbian2. Podobnie dla maszyny Virbian4 ustaw bramę domyślną na 192.168.3.3.
* USTAWIANIE BRAMY DOMYŚLNEJ:
* *ip route add default via 192.168.1.2*
* *ip route add default via 192.168.3.3*
4. :rocket: Sprawdź, że z maszyny Virbian2 możesz z powodzeniem pingnąć maszynę Virbian3.
5. :rocket: Sprawdź, co dzieje się, jeśli z maszyny Virbian1 pingasz adres 192.168.2.3. W Wiresharku zaobserwuj, że pakiety ICMP dochodzą do celu, ale odpowiedzi już nie wracają ze względu na brak odpowiedniej trasy w tablicy routingu.
6. :rocket: Sprawdź, co dzieje się, jeśli z maszyny Virbian1 pingasz adres 192.168.3.3. Jaką odpowiedź dostajesz, od jakiej maszyny i dlaczego od niej?
* ```From 192.168.1.2 icmp_seq=1 Destination Net Unreachable```
## TUTORIAL 1
1. :rocket: Na maszynie Virbian2 utwórz puste pliki konfiguracyjne:
* /etc/quagga/ripd.conf
* /etc/quagga/zebra.conf
* /etc/quagga/vtysh.conf
a następnie uruchom usługę *ripd* poleceniam:
```
V2#> touch /etc/quagga/ripd.conf
V2#> touch /etc/quagga/zebra.conf
V2#> touch /etc/quagga/vtysh.conf
V2#> systemctl start ripd
```
2. :rocket: Na maszynie Virbian2 wejdź w tryb konfiguracji routingu dynamicznego poleceniem:
* *vtysh*
3. :rocket: W trybie wydawania poleceń terminala vtysh wyświetl dostępne interfejsy i obecną tablicę routingu poleceniami:
* *virbian# show interface*
* *virbian# show ip route*
Porównaj wyniki działania powyższych poleceń i wyników wyświetlanych
w zwykłej powłoce poleceniami ip addr i ip route.
4. :rocket: Wciąż na maszynie Virbian2 wejdź w tryb konfiguracji terminala vtysh (znak zachęty zmieni się na virbian(config)#). Następnie włącz protokół RIP (w wersji 2) dla sieci bezpośrednio podłączonych do interfejsów enp-rem1 i enp-rem2. W tym celu wykonaj polecenia:
* *virbian(config)# router rip*
* *virbian(config-router)# version 2*
* *virbian(config-router)# network 192.168.1.0/24*
* *virbian(config-router)# network 192.168.2.0/24*
5. :rocket: W terminalu vtysh wyświetl aktualną konfigurację poleceniem
* *virbian# show running-config*
Upewnij się, że są w niej informacje takie jak:
```
router rip
version 2
network 192.168.1.0/24
network 192.168.2.0/24
```
6. :rocket: Wykonaj wszystkie powyższe punkty, ale tym razem dla maszyny Virbian3, polecenia:
* *virbian(config)# router rip*
* *virbian(config-router)# version 2*
* *virbian(config-router)# network 192.168.2.0/24*
* *virbian(config-router)# network 192.168.3.0/24*
7. :rocket: W Wiresharku na wszystkich maszynach zaobserwuj przesyłane pakiety protokołu RIP. Na maszynach Virbian2 i Virbian3 w terminalu vtysh wyświetl trasy skonfigurowane przez protokół RIP poleceniem:
* virbian# *show ip rip*
V2:
```
Network Next Hop Metric From Tag Time
C(i) 192.168.1.0/24 0.0.0.0 1 self 0
C(i) 192.168.2.0/24 0.0.0.0 1 self 0
R(n) 192.168.3.0/24 192.168.2.3 2 192.168.2.3 0 02:38
```
V3:
```
Network Next Hop Metric From Tag Time
R(n) 192.168.1.0/24 192.168.2.2 2 192.168.2.2 0 02:41
C(i) 192.168.2.0/24 0.0.0.0 1 self 0
C(i) 192.168.3.0/24 0.0.0.0 1 self 0
```
8. :rocket: Wyświetl także tablicę routingu w zwykłej powłoce poleceniem *ip route*.
V2:
```
192.168.1.0/24 dev enp-rem1 proto kernel scope link src 192.168.1.2
192.168.2.0/24 dev enp-rem2 proto kernel scope link src 192.168.2.2
192.168.3.0/24 via 192.168.2.3 dev enp-rem2 proto zebra metric 20
```
V3:
```
192.168.1.0/24 via 192.168.2.2 dev enp-rem2 proto zebra metric 20
192.168.2.0/24 dev enp-rem2 proto kernel scope link src 192.168.2.3
192.168.3.0/24 dev enp-rem3 proto kernel scope link src 192.168.3.3
```
9. :rocket: Po zakończeniu budowania tablic poleceniami ping i traceroute sprawdź, które adresy IP interfejsów są osiągalne ze różnych maszyn.
* Z V1: wszystkie
* Z V2: wszystkie
**PYTANIA**:
1. Czym jest protokół routingu dynamicznego **RIP**?
## TUTORIAL 2
1. :rocket: Poleceniem ip aktywuj interfejsy enp-rem4 maszyn Virbian1 i Virbian4. Przypisz inter- fejsowi enp-rem4 maszyny Virbian1 adres 192.168.4.1/24, zaś interfejsowi enp-rem4 maszyny Virbian4 adres 192.168.4.4/24.
2. :rocket: Na maszynach Virbian1 i Virbian4 usuń trasy domyślne poleceniami
* V1#> *ip route del default*
* V4#> *ip route del default*
3. :rocket: Analogicznie jak w poprzednim tutorialu uruchom protokół RIP dla obu interfejsów na maszynie Virbian1.
4. :rocket: Na maszynach Virbian1, Virbian2 i Virbian3 ponownie wyświetl tablicę routingu w terminalu vtysh poleceniem show ip rip. Na każdej maszynie dostępne powinny być cztery sieci. Jakie są obliczone odległości do tych sieci? Sprawdź, że analogiczną informację (bez odległości) otrzymujesz w zwykłej powłoce poleceniem ip route.
V1:
```
Network Next Hop Metric From Tag Time
C(i) 192.168.1.0/24 0.0.0.0 1 self 0
R(n) 192.168.2.0/24 192.168.1.2 2 192.168.1.2 0 02:34
R(n) 192.168.3.0/24 192.168.1.2 3 192.168.1.2 0 02:34
C(i) 192.168.4.0/24 0.0.0.0 1 self 0
```
5. :rocket: Analogicznie jak w poprzednim tutorialu uruchom protokół RIP dla obu interfejsów na maszynie Virbian4. Przejrzyj rozsyłane pakiety w Wiresharku.
6. :rocket: Ponownie obejrzyj tablice routingu na wszystkich maszynach w terminalu vtysh pole- ceniem show ip rip. Największa odległość między dwoma maszynami powinna teraz wynosić 2. Sprawdź, że tak jest istotnie poleceniem traceroute. Poleceniami ping i traceroute sprawdź, że każdy interfejs jest osiągalny z każdej maszyny.
* V1: (*show ip rip*)
```
Network Next Hop Metric From Tag Time
C(i) 192.168.1.0/24 0.0.0.0 1 self 0
R(n) 192.168.2.0/24 192.168.1.2 2 192.168.1.2 0 02:57
R(n) 192.168.3.0/24 192.168.4.4 2 192.168.4.4 0 02:36
C(i) 192.168.4.0/24 0.0.0.0 1 self 0
```
7. :rocket: Na maszynie Virbian2 wyłącz należący do sieci 192.168.2.0/24 interfejs enp-rem2.
* V2#> *ip link set down dev enp-rem2*
8. :rocket: Ponownie aktywuj interfejs enp-rem2 poleceniem
* V2#> *ip link set up dev enp-rem2*
**PYTANIA**
## WYZWANIE

1. :rocket: Skonfiguruj 5 maszyn wirtualnych Virbian1 –Virbian5, tak aby korzystały z sieci local0– local4, tak jak zaznaczono na rysunku powyżej. Interfejsy maszyn podłączonych do sieci locali nazwij enp-loci.
2. :rocket: Niech sieci *locali* odpowiada zakres adresów 192.168.i.0/24. Przypisz dwóm interfejsom podłączonym do sieci *locali* wybrane adresy IP z sieci 192.168.i.0/24.
* V1:
* 192.168.0.1/24
* V2:
* 192.168.0.2/24
* 192.168.1.2/24
* 192.168.2.2/24
* V3:
* 192.168.1.3/24
* 192.168.3.3/24
* V4:
* 192.168.2.4/24
* 192.168.3.4/24
* 192.168.4.4/24
* V5:
* 192.168.4.5/24
4. :rocket: Dla maszyny Virbian1 ustaw trasę domyślną przechodzącą przez maszynę Virbian2, zaś dla maszyny Virbian5 trasę domyślną przechodzącą przez maszynę Virbian4.
* ip route add default via 192.168.0.2
* ip route add default via 192.168.4.4
6. :rocket: Na maszynach Virbian2, Virbian3 i Virbian4 włącz protokół RIP (w wersji 2) dla wszystkich sieci podłączonych bezpośrednio do tych maszyn. Wyświetl zbudowane w ten sposób tablice routingu.
* Polecenia dla wszystkich:
* sudo touch /etc/quagga/ripd.conf
* sudo touch /etc/quagga/zebra.conf
* sudo touch /etc/quagga/vtysh.conf
* sudo systemctl start ripd
* sudo vtysh
* configure terminal
* router rip
* version 2
* Dla V2:
* network 192.168.0.0/24
* network 192.168.1.0/24
* network 192.168.2.0/24
* Dla V3:
* network 192.168.1.0/24
* network 192.168.3.0/24
* Dla V4:
* network 192.168.2.0/24
* network 192.168.3.0/24
* network 192.168.4.0/24
8. Sprawdź wzajemną osiągalność maszyn Virbian1, Virbian3 i Virbian5 poleceniem ping. Wyświetl trasy między tymi maszynami poleceniem traceroute. W razie potrzeby zidentyfikuj problem za pomocą Wiresharka.
## PYTANIA