Lab/Nettverk: Difference between revisions
No edit summary |
No edit summary |
||
| (8 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
=== Miljø === |
|||
== Fysisk oppsett av nettverk == |
|||
Jeg skal late som jeg setter opp nettverket til et lite universitet med 160 ansatte og 2400 studenter. Universitetet heter ''The Educational Modern University'' ('''TEMU'''). |
|||
=== Domenenavn === |
|||
Maskinen har et innebygd gigabit-nettverkskort som kobles til skolens nett (VLAN 1418, public-nettet). I tillegg er det satt inn et PCI-nettverkskort på 10/100 Mbit som er tenkt brukt til en switch som kan representere intern-nettet i laben. |
|||
Det trengs et domenenavn for det helhetlige laboppsettet. Jeg velger temu.internal - les mer om formålet med domenenavnet .internal her: https://en.wikipedia.org/wiki/.internal |
|||
=== Nettverksplan=== |
|||
* <code>eno1</code>: |
|||
Jeg planlegger å benytte følgende IP-ranger: |
|||
** MAC: <code>98:90:96:a8:ee:92</code> |
|||
** Tilkoblet: gvk-k002.202 |
|||
* <code>enp4s2</code>: |
|||
** MAC: <code>00:50:da:50:51:08</code> |
|||
**Tilkoblet: Ingenting (tiltenkt switch) |
|||
'''IPv4-nett''': <code>10.10.0.0/16</code> |
|||
== Virtuelt oppsett av nettverk == |
|||
'''IPv6-nett''': <code>fd9c:e705:7fdc::/48</code> |
|||
=== Nettverksplan === |
|||
IPv4-nett: 10.0.0.0/8 |
|||
Nettet deler jeg opp sånn, først overordnet i 4 like store deler: |
|||
IPv6-nett: fd9c:e705:7fdc::/48 |
|||
# <code>10.10.0.0/18</code> - Teknisk/administrativt/diverse som ikke passer inn |
|||
# <code>10.10.64.0/18</code> - Satt av til lab-nett og forskningsaktivitet |
|||
# <code>10.10.128.0/18</code> - Studenter og ansatte (datasaler og kontorer) |
|||
# <code>10.10.192.0/18</code> - Alt av trådløsnett |
|||
På denne måten forventer jeg for eksempel å alltid se all vanlig brukertrafikk i nettblokken <code>10.10.128.0/17</code>, og jeg kan treffe alle ansatte (kontor og VPN) med <code>10.10.160.0/19</code>, dette er nyttig i brannmurer. |
|||
VLAN-nummer matcher jeg opp sammen med den tredje oktetten i nettet, og jeg gjenbruker også dette tallet i IPv6-nettet. |
|||
{| class="wikitable" |
{| class="wikitable" |
||
!VLAN |
!VLAN |
||
| Line 22: | Line 28: | ||
!IPv6-nett |
!IPv6-nett |
||
|- |
|- |
||
| |
|8 |
||
|Servere |
|Servere |
||
|10 |
|10.10.8.0/24 |
||
|fd9c:e705:7fdc:8::/64 |
|||
|- |
|||
|10 |
|||
|Admins |
|||
|10.10.10.0/24 |
|||
|fd9c:e705:7fdc:10::/64 |
|fd9c:e705:7fdc:10::/64 |
||
|- |
|- |
||
| |
| - |
||
|Admin-VPN |
|||
|Klienter |
|||
|10. |
|10.10.11.0/24 |
||
|fd9c:e705:7fdc: |
|fd9c:e705:7fdc:11::/64 |
||
| |
|- |
||
|64 |
|||
|Gjester |
|||
IPv6-nettet er ment for ren intern bruk, og bruker [https://datatracker.ietf.org/doc/html/rfc4193 RFC4193] Unique Local Address Range generert fra [https://network00.com/NetworkTools/IPv6LocalAddressRangeGenerator/ denne siden]. Routerens IP-adresse er alltid den første i hvert nett. Den tredje oktetten (IPv4) eller det fjerde segmentet (IPv6) indikerer VLAN-nummeret. |
|||
|10.10.64.0/23 |
|||
|fd9c:e705:7fdc:64::/64 |
|||
=== Virtuell router === |
|||
|- |
|||
For at labens interne nett (LAN) skal få tilgang til internett så trengs det en router. Jeg benytter [https://vyos.io/rolling-release/ VyOS Rolling Release] til dette. Den nyeste ISO-filen lastes ned og [[Lab/Proxmox/Laste opp ISO|lastes opp til hosten]]. |
|||
|128 |
|||
| Studenter |
|||
==== Oppsett av VM ==== |
|||
|10.10.128.0/22 |
|||
Uthever de valgene som er tatt |
|||
|fd9c:e705:7fdc:128::/64 |
|||
|- |
|||
# Start oppretting av ny VM |
|||
| - |
|||
## General: |
|||
|Studenter-VPN |
|||
### Name: router |
|||
|10.10.136.0/23 |
|||
### Start at boot: true |
|||
|fd9c:e705:7fdc:136::/64 |
|||
### Start/shutdown order: 1 |
|||
|- |
|||
## OS: |
|||
|160 |
|||
##* Velger ISO-filen for VyOS |
|||
|Ansatte |
|||
## System: |
|||
|10.10.160.0/23 |
|||
### Graphic card: SPICE |
|||
|fd9c:e705:7fdc:160::/64 |
|||
### Qemu Agent: true |
|||
|- |
|||
## Disks: |
|||
| - |
|||
##* Alt som default |
|||
|Ansatte-VPN |
|||
## CPU: |
|||
|10.10.168.0/24 |
|||
##* Alt som default (1 cpu, 1 core) |
|||
|fd9c:e705:7fdc:172::/64 |
|||
## Memory: |
|||
|- |
|||
##* Alt som default (2048) |
|||
|192 |
|||
## Network |
|||
|Studenter-WLAN |
|||
##* Alt som default |
|||
|10.10.192.0/22 |
|||
## Fullfør oppsett, men ikke start VM-en |
|||
|fd9c:e705:7fdc:192::/64 |
|||
# Gå til Hardware-taben for VM-en |
|||
|- |
|||
# Add -> Network Device: Bridge: vmbr1 (dette blir LAN-siden) |
|||
|224 |
|||
# Add -> Serial Port: 0 (gir lokalt konsole via xterm.js) |
|||
|Ansatte-WLAN |
|||
# Nå kan VM-en startes |
|||
|10.10.224.0/24 |
|||
|fd9c:e705:7fdc:224::/64 |
|||
==== Installasjon av VyOS ==== |
|||
|- |
|||
Åpne console på xterm.js, da går det an å kopiere inn og ut ved behov. Logg inn med default brukernavn og passord: vyos/vyos og start installasjonen med kommandoen: |
|||
|240 |
|||
install image |
|||
|Gjester-WLAN |
|||
Velg alle default-valgene underveis, bytt fra "No" til "Yes" ved behov. |
|||
|10.10.240.0/23 |
|||
|fd9c:e705:7fdc:240::/64 |
|||
Sett passord for brukeren <code>vyos</code> og dokumenter i passordliste |
|||
|- |
|||
|242 |
|||
|IOT-WLAN |
|||
|10.10.242.0/24 |
|||
|fd9c:e705:7fdc:242::/64 |
|||
|}IPv6-nettet er ment for ren intern bruk, og bruker [https://datatracker.ietf.org/doc/html/rfc4193 RFC4193] Unique Local Address Range generert fra [https://unique-local-ipv6.com/ denne siden]. Routerens IP-adresse er alltid den første i hvert nett. Den tredje oktetten (IPv4) eller det fjerde segmentet (IPv6) indikerer VLAN-nummeret. |
|||
Jeg har satt av plass til å vokse for alle nettene, og prøvd å holde meg til nettmasker som kan gi mening; hvis jeg vil ha brannmuråpning fra både ansatt-nett og ansatt-VPN kan jeg bruke 10.10.20/16 |
|||
Reboot med kommandoen: |
|||
reboot |
|||
Når router-VM-en har bootet kan man logge inn som brukeren vyos og passordet man opprettet under installasjonen. Legg merke til at routeren ikke har noen IP-adresse eller netverkstilkobling enda, kjør kommandoen: |
|||
show interfaces |
|||
Dette skal se slik ut: |
|||
vyos@vyos:~$ show interfaces |
|||
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down |
|||
Interface IP Address S/L Description |
|||
--------- ---------- --- ----------- |
|||
eth0 - A/D |
|||
eth1 - A/D |
|||
lo 127.0.0.1/8 u/u |
|||
::1/128 |
|||
Nå kan man begynne med et grunnleggende oppsett. Start konfigurasjon med kommandoen: |
|||
configure |
|||
Man ser at man er i configure-mode ved at det står <code>[edit]</code> i linjen over. Sett opp DHCP på nettverkskortet <code>eth0</code> ved å skrive denne kommandoen: |
|||
set interfaces ethernet eth0 address dhcp |
|||
Siden vi er i gang setter vi opp ssh-tilgang også: |
|||
set service ssh |
|||
Dette må nå settes aktivt og lagres slik at det gjelder ved neste reboot. |
|||
commit |
|||
save |
|||
Gå ut av konfig-modus og sjekk interfaces igjen: |
|||
exit |
|||
show interfaces |
|||
Nå skal du kunne se at eth0 har fått en IP-adresse. VyOS skal også gjenkjenne at den kjører i KVM, og vil starte qemu-guest-agent, slik at du kan se IP-adressene fra Summary-fanen i Proxmox. Herfra kan konfigurasjon gjøres fra SSH i stedet: |
|||
ssh vyos@[ip-på-eth0] |
|||
Deretter kan man sette opp VLAN på eth1 (LAN-siden) og tildele IP-adresser til routeren og setter opp routing: |
|||
configure |
|||
set interfaces ethernet eth1 vif 10 address 10.0.10.1/24 |
|||
set interfaces ethernet eth1 vif 10 address fd9c:e705:7fdc:10::1/64 |
|||
set interfaces ethernet eth1 vif 20 address 10.0.20.1/24 |
|||
set interfaces ethernet eth1 vif 20 address fd9c:e705:7fdc:20::1/64 |
|||
set nat source rule 100 outbound-interface eth0 |
|||
set nat source rule 100 translation address masquerade |
|||
commit |
|||
save |
|||
Latest revision as of 09:59, 16 December 2025
Miljø
Jeg skal late som jeg setter opp nettverket til et lite universitet med 160 ansatte og 2400 studenter. Universitetet heter The Educational Modern University (TEMU).
Det trengs et domenenavn for det helhetlige laboppsettet. Jeg velger temu.internal - les mer om formålet med domenenavnet .internal her: https://en.wikipedia.org/wiki/.internal
Nettverksplan
Jeg planlegger å benytte følgende IP-ranger:
IPv4-nett: 10.10.0.0/16
IPv6-nett: fd9c:e705:7fdc::/48
Nettet deler jeg opp sånn, først overordnet i 4 like store deler:
10.10.0.0/18- Teknisk/administrativt/diverse som ikke passer inn10.10.64.0/18- Satt av til lab-nett og forskningsaktivitet10.10.128.0/18- Studenter og ansatte (datasaler og kontorer)10.10.192.0/18- Alt av trådløsnett
På denne måten forventer jeg for eksempel å alltid se all vanlig brukertrafikk i nettblokken 10.10.128.0/17, og jeg kan treffe alle ansatte (kontor og VPN) med 10.10.160.0/19, dette er nyttig i brannmurer.
VLAN-nummer matcher jeg opp sammen med den tredje oktetten i nettet, og jeg gjenbruker også dette tallet i IPv6-nettet.
| VLAN | Bruksområde | IPv4-nett | IPv6-nett |
|---|---|---|---|
| 8 | Servere | 10.10.8.0/24 | fd9c:e705:7fdc:8::/64 |
| 10 | Admins | 10.10.10.0/24 | fd9c:e705:7fdc:10::/64 |
| - | Admin-VPN | 10.10.11.0/24 | fd9c:e705:7fdc:11::/64 |
| 64 | Gjester | 10.10.64.0/23 | fd9c:e705:7fdc:64::/64 |
| 128 | Studenter | 10.10.128.0/22 | fd9c:e705:7fdc:128::/64 |
| - | Studenter-VPN | 10.10.136.0/23 | fd9c:e705:7fdc:136::/64 |
| 160 | Ansatte | 10.10.160.0/23 | fd9c:e705:7fdc:160::/64 |
| - | Ansatte-VPN | 10.10.168.0/24 | fd9c:e705:7fdc:172::/64 |
| 192 | Studenter-WLAN | 10.10.192.0/22 | fd9c:e705:7fdc:192::/64 |
| 224 | Ansatte-WLAN | 10.10.224.0/24 | fd9c:e705:7fdc:224::/64 |
| 240 | Gjester-WLAN | 10.10.240.0/23 | fd9c:e705:7fdc:240::/64 |
| 242 | IOT-WLAN | 10.10.242.0/24 | fd9c:e705:7fdc:242::/64 |
IPv6-nettet er ment for ren intern bruk, og bruker RFC4193 Unique Local Address Range generert fra denne siden. Routerens IP-adresse er alltid den første i hvert nett. Den tredje oktetten (IPv4) eller det fjerde segmentet (IPv6) indikerer VLAN-nummeret.
Jeg har satt av plass til å vokse for alle nettene, og prøvd å holde meg til nettmasker som kan gi mening; hvis jeg vil ha brannmuråpning fra både ansatt-nett og ansatt-VPN kan jeg bruke 10.10.20/16