Este artigo mostra alguns comandos básicos para utilização de VLANs no Slackware Linux.
Adicionando
# Shell
# verifica se o módulo 8021q esta carregado lsmod |grep 8021q # caso não esteja carregue o módulo com o comando abaixo modprobe 8021q # verifique se o módulo foi carregado corretamente lsmod |grep 8021q 8021q 20529 0 garp 6759 1 8021q # adiciona a vlan 200 a interface eth0 vconfig add eth0 200 Added VLAN with VID == 200 to IF -:eth0:- # uma nova interface eth0.200 é criada para configurar IPs na VLAN 200 utilize o comando ifconfig normalmente ifconfig eth0.200 192.168.0.10/24 ifconfig eth0.200 eth0.200: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 192.168.0.10 netmask 255.255.255.0 broadcast 192.168.0.255 ether 38:ea:a7:d2:33:fb txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
802.1q é o nome do padrão que permite a criação de VLANs. Se o módulo já estiver carregado o comando modprobe pode ser omitido.
O comando vconfig adiciona a VLAN na interface ethernet escolhida e o comando ifconfig configura IP e mascara além de habilitar a interface de rede. É possível adicionar mais VLANs em uma mesma interface de rede utilizando o comando vconfig e escolhendo um outro número para a VLAN.
Removendo
# Shell
# remove a VLAN 200 vconfig rem eth0.200 Removed VLAN -:eth0.200:-
Inicialização
Não existe um arquivo de configuração padrão para VLANs no Slackware. Criar um script é a melhor alternativa, abaixo um exemplo que pode ser alterado conforme a necessidade, adicionando DHCP Client ou adicionando rotas, etc.
Crie o script /etc/rc.d/rc.vlan e adicione o conteúdo abaixo:
/etc/rc.d/rc.vlan
#!/bin/sh
#
# /etc/rc.d/rc.vlan
#
# Start/stop/restart vlan.
#
vlan_start() {
echo "Setting vlans ..."
modprobe 8021q
vconfig add eth0 200
ifconfig eth0.200 192.168.0.10/24 up
echo "... done"
}
vlan_stop() {
echo "Removing vlans ..."
ifconfig eth0.200 down
vconfig rem eth0.200
rmmod 8021q
echo "... done"
}
vlan_restart() {
vlan_stop
sleep 2
vlan_start
}
case "$1" in
'start')
vlan_start
;;
'stop')
vlan_stop
;;
'restart')
vlan_restart
;;
*)
echo "Usage: $0 {start|stop|restart}"
esac
Conceda permissão de execução ao script.
# Shell
chmod +x /etc/rc.d/rc.vlan
Use o script para iniciar, parar e reiniciar a vlan.
# Shell
Configura a vlan /etc/rc.d/rc.vlan start Remove as configurações /etc/rc.d/rc.vlan stop Remove e depois adiciona novamente as configurações /etc/rc.d/rc.vlan restart