vlan

Revision 4 as of 2008-08-06 16:19:13

Clear message

Virtual Local Area Networks are used to devide a physical network into several broadcast domains.

Introduction

As you probably already understand, the reason to use vlan's is to divide a network and separate host's that shouldn't be able to access each other. This article will address the IEEE 802.1q standard way of doing this division.

There are two types of packets on a vlan, these are tagged and untagged packets. The untagged packet is a regular packet and looks just like a packet that exists on a regular network. Untagged packets is the most common type on a vlan. The decision of which vlan an untagged packet belongs to is made by the switch. A switch can be configured to assign specific ports to specific vlan's. The switch can also be configured to receive tagged packets.

If the switch receives a tagged packet and the port which it receives the packet with is configured to allow tagged packets, it knows which ports it can send the packet to.

A switch can also be configured to transmit tagged packets, this could be used to make a vlan span more than one switch or to make use of a vlan aware NIC (Network Interface Card) on a router, firewall, server or even a workstation.

A vlan is asigned a specific id this id can be anything between 1 and 4094. Vlan 1 is very often used for management so this should not be used.

Prerequisites

Variables needed to make use of vlan's. Smile :)

Hardware

To be able to make use of vlan's you will need a switch (or several) that support the IEEE 802.1q standard. You will also need a NIC (Network Interface Card) that plays nice when used to transmit and receive tagged packets. Many NIC's do support 802.1q but some have trouble with the extra 4 bytes added to the packet when tagged packets are used.

Software

Ubuntu supports vlan's out of the box but a userspace tool needs to be installed to create the vlan aware interfaces.

Scenario

We have a router/firewall with two NIC's one used to connect to the Internet (WAN) and the other to connect to the local network (LAN). We would like to beef up the security aspect of our site and introduce a Demilitarized Zone (DMZ). If this should be implemented without the use of vlan's we would have to buy a new switch and a third NIC for our router/firewall.

Luckily the switch used supports 802.1q. The switch configuration is done by adding a new vlan. How this is done should be documented in the switch documentation.

Networks

  • WAN 172.16.0.0/24
  • LAN 192.168.0.0/24
  • DMZ 10.0.0.0/24

Installation

sudo apt-get install vlan

Configuration

Load the 8021q module into the kernel.

sudo modprobe 8021q

Create a new interface that is a member of a specific vlan, vlan id 10 is used.

sudo vconfig add eth1 10

Assigning an address to the new interface.

sudo ifconfig eth1.10 10.0.0.1 netmask 255.255.255.0

Making it permanent

To make this setup permanent, some lines has to be added to some configuration files.

Add the module to the kernel on boot.

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

Create the interface and make it available during the boot. Add the following lines to /etc/network/interfaces

auto eth1.10
iface eth1.10 inet static
    address 10.0.0.1
    netmask 255.255.255.0
    vlan-raw-device eth1


CategoryNetworking