嵌入式ARM-LINUX系统搭建vlan服务

2019-07-12 16:03发布

1. 内核移植支持VLAN(配置编译即可)
    --- Networking support 
Networking options
802.1Q VLAN Support (编译为模块加载)
[ ]   GVRP (GARP VLAN Registration Protocol) support (不选,即不编译)
烧录内核后,系统启动,用下面方法验证是否成功:
        (1) dmesg | grep -i 802  ,如果有类似如下的信息输出,即内核已支持:
802.1Q VLAN Support v1.8 Ben Greear

(2) 检查「/proc/net/vlan」档案是否存在
config eth1.100 eth1.25
2. 移植busybox,重新配置,编译vconfig工具(vlan配置工具),编译出来的busyox程序可以直接改名称vconfig命令即可使用。

3. 根据busybox安装出来的bin和sbin,替换跟文件系统中的对应目录,然后重新制作根文件系统映像。
运行vconfig命令查看是否移植成功。
4. vlan配置方法:(网上说要保证原有物理网卡eth0, ip为0.0.0.0)


vconfig程序允许在启用vlan的内核上创建和删除vlan设备。 Vlan设备是虚拟以太网设备,代表物理LAN上的虚拟服务器。 这是配置VLAN的一种方法:
 
要为eth0接口添加带有以下命令的VLAN ID 100:
(vlan_id的范围为:1-4094,默认为1)

ifconfig eth0 0.0.0.0  (禁止eth0网卡原有IP,这一步可以省略)

vconfig add eth0 100

vconfig add命令在eth0上创建一个vlan-device,结果为eth0.100接口。 

用下面的命令为它分配IP:


ifconfig eth0.100 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255 up  (这一步也可以省略,配好vlan ID 后,直接DHCP,相应的vlan虚拟网卡会自动up)


获取Vlan0.100的详细信息:


cat /proc/net/vlan/eth0.100


删除Vlan的方法:


ifconfig eth0.100 down


vconfig rem eth0.100




如何永久保存Vlan的配置:
编辑文件: /etc/network/interfaces


$ sudo vi /etc/network/interfaces
1
vlan for eth0 with ID - 100 on a Debian/Ubuntu Linux


auto eth0.100 
iface eth0.100 inet static


    address 192.168.1.200
    netmask 255.255.255.0
    vlan-raw-device eth0 
1
2
3
4
保存后退出即可.




5. 使用VLAN功能,原先的IP要禁掉