802.1Q VLAN Tagging configureren op CentOS 7

Estimated reading time: 3 min

Introductie

Een VLAN maakt het mogelijk om grote netwerken in kleinere netwerken te splitsen. De 802.1Q is een standaard die alle fabrikanten implementeren in hun netwerkapparatuur. Sommige switches maken het mogelijk om meerdere VLANs toe te voegen aan één netwerkpoort. Door deze feature is het mogelijk om meerdere VLANs aan een server toe te voegen. Doordat de ethernet frame tagged is kan de switch het pakket aan de juiste netwerk leveren.

Vereisten

  • De netwerk switch waarmee je server is verbonden moet ingesteld worden.
  • De switch moet VLAN tagging ondersteunen.
  • Je moet ingelogd zijn via SSH als sudo of root gebruiker. In deze tutorial gaan we ervan uit dat je bent aangemeld als sudo-gebruiker.

Stap 1 – Log in met SSH

Log in met de gebruiker root of met een gebruiker die root toegang heeft. Je kunt dit artikel volgen om met SSH in te loggen op jouw server.

Stap 2 – Schakel NetworkManager uit

Wij kiezen ervoor om NetworkManager uit te schakelen. Houd er rekening mee dat deze instructies niet zullen werken als NetworkManager is ingeschakeld.

Controleer de status van NetworkManager

sudo systemctl status NetworkManager

Als de NetworkManager niet actief is en je ziet de volgende melding Active: inactive (dead) dan kun je verder gaan naar stap 3.

NetworkManager.service - Network Manager
  Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
  Active: inactive (dead)
    Docs: man:NetworkManager(8)

Als de NetworkManager actief is moeten we deze eerst uitschakelen.

NetworkManager.service - Network Manager
   Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled)
   Active: active (running) since Fri, 08 Mar 2013 12:50:04 +0100; 3 days ago

Schakel NetworkManager uit.

sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager

Als NetworkManager is uitgeschakeld kunnen we deze verwijderen.

sudo yum -y remove NetworkManager NetworkManager-libnm NetworkManager-team NetworkManager-tui NetworkManager-wifi

Stap 3 – Laad de kernel module

Controleer of de kernel module 8021q actief is geladen.

sudo lsmod | grep 8021q

Als de module geladen is zou je de volgende uitkomst moeten zien.

8021q                  33208  0
garp                   14384  1 8021q
mrp                    18542  1 8021q

Als er geen uitkomst zichtbaar is kun je het volgende commando uitvoeren om de kernel module in te laden.

sudo modprobe 8021q

Om ervoor te zorgen dat de 8021q kernel module wordt geladen tijdens het booten moeten wij ervoor zorgen dat deze wordt toegevoegd aan het configuratiebestand ‘modules’. 

sudo su -c 'echo "8021q" >> /etc/modules'

Stap 4 – Vind de actieve netwerkinterface

clear && echo $(ip -o -4 route get 8.8.8.8 | sed -nr 's/.*dev ([^\ ]+).*/\1/p')

Stap 5 – Configureer de netwerkinterface

De uitkomst van stap 4 is voor onze setup eth0. Dit artikel gaat ervan uit dat de uitkomst eth0 is. Indien de uitkomst van stap 4 voor jou afwijkend is zul je dit moeten vervangen met de uitkomst van stap 4.

Pas het netwerkconfiguratiebestand aan van eth0.

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0

Vervang het configuratiebestand met de volgende 4 regels.

BOOTPROTO="none"
DEVICE="eth0"
ONBOOT="yes"
TYPE="Ethernet"

Maak een nieuwe configuratiebestand aan voor de VLAN, in ons geval is dat VLAN 3047

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0.3047

Voeg de volgende regels toe.

DEVICE=eth0.3047
BOOTPROTO=none
ONBOOT=yes
IPADDR=78.41.207.45
PREFIX=24
NETWORK=78.41.207.0
VLAN=yes

Maak een tweede configuratiebestand aan voor VLAN 453.

sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0.453

Voeg de volgende regels toe.

DEVICE=eth0.453
BOOTPROTO=none
ONBOOT=yes
IPADDR=89.207.131.20
PREFIX=24
NETWORK=89.207.131.0
VLAN=yes

Stap 6 – Creëer netwerkregels

Maak een netwerkregel bestand aan voor VLAN 3047.

sudo nano /etc/sysconfig/network-scripts/rule-eth0.3047

Voeg de volgende regel toe.

from 78.41.207.0/24 tab 1 priority 500

Maak een netwerkregel bestand aan voor VLAN 453.

sudo nano /etc/sysconfig/network-scripts/rule-eth0.453

Voeg de volgende regel toe.

from 89.207.131.0/24 tab 2 priority 501

Stap 7 – Creëer netwerk routes

Maak een netwerk route bestand aan voor VLAN 3047.

sudo nano /etc/sysconfig/network-scripts/route-eth0.3047

Voeg de volgende regel toe.

default via 78.41.207.1 dev eth0.3047 table 1

Maak een netwerk route bestand aan voor VLAN 453.

sudo nano /etc/sysconfig/network-scripts/route-eth0.453

Voeg de volgende regel toe.

default via 89.207.131.1 dev eth0.453 table 2

Stap 8 – Configureer sysctl

Maak het volgende bestand aan om “packet forwarding” te activeren.

sudo nano /etc/sysctl.d/90-override.conf

Voeg de volgende regel toe.

net.ipv4.ip_forward=1

Activeer reverse path en arp filtering.

net.ipv4.conf.all.arp_filter=0
net.ipv4.conf.all.rp_filter=2

Voer de wijzigingen door.

sudo sysctl -p /etc/sysctl.d/90-override.conf

Stap 9 – Reboot

sudo reboot

Stap 10 – Controleer de VLAN interface status

Voer het volgende command uit.

cat /proc/net/vlan/config

Als de VLAN niet actief is zou je de volgende uitkomst moeten hebben.

VLAN Dev name     | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD

Indien het actief is, zou je de volgende uitkomst moeten hebben.

VLAN Dev name     | VLAN ID
Name-Type: VLAN_NAME_TYPE_RAW_PLUS_VID_NO_PAD
eth0.3047  	| 3047  | eth0
eth0.453   	| 453  | eth0

Stap 11 – Test IP adressen

Ping vanuit je werkstation om te controleren of de IPs werken.

ping 78.41.207.45
ping 89.207.131.20

Stap 12 – Test IP adres op de server

Controleer of de pakketten de server via de juiste VLAN verlaten. Door een ping commando uit te voeren vanuit eth0.3047 is het mogelijk om de controleren of server communiceert over de juiste VLAN interface.

ping -I eth0.3047 8.8.8.8

Uitkomst

PING 8.8.8.8 (8.8.8.8) from 78.41.207.45 eth0.3047: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=122 time=2.03 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=122 time=2.13 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=122 time=2.21 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=122 time=2.06 ms
^C
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3080ms
rtt min/avg/max/mdev = 2.038/2.113/2.217/0.089 ms

Voer een ping commando uit via VLAN 453

ping -I eth0.453 8.8.8.8

Uitkomst

PING 8.8.8.8 (8.8.8.8) from 89.207.131.20 eth0.453: 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=123 time=2.26 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=123 time=2.37 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=123 time=2.44 ms
^C
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2756ms
rtt min/avg/max/mdev = 2.266/2.360/2.444/0.073 ms

Conclusie

Gefeliciteerd, je hebt een server geconfigureerd met twee VLANS en twee gateways. VLAN tagging is niet gelimiteerd tot twee VLANs, meerdere VLANs worden ondersteund. Elke VLAN dient afzonderlijk toegevoegd worden aan de netwerkconfiguratie met de juiste VLAN configuratie.

 

Was this article helpful?
Dislike 0
Views: 347

Lees Interacties

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

snel-knowledgebase-image