嵌入式爱好者

brctl建立网口桥接

2022-4-11 15:44| 发布者: forqs| 查看: 518| 评论: 0

类目: I.MX6系列产品  >  Linux     文档编号: 629

本文以6ull-s 4.1.15为例,方法是通用的
1.内核配置Ethernet Bridging
make imx6ull_defconfig 加载配置文件
make menuconfig 打开图形配置界面
加载路径为Networking support/Networking options/【*】802.1d Ethernet Bridging
空格加载,回车进入,【*】为配置进内核,【M】为配置为模块

. /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi  运行环境变量
make zImage 编译内核
2.配置busybox,加载brctl工具
busybox 在板子终端查看busybox是否加载了brctl(若已加载,可跳过)

在开发环境中:
tar xvf busybox-1.24.1.tar.bz2
cd busybox-1.24.1
make menuconfig
Busybox Settings  --->General Configuration  --->[*] Don't use /usr
(这样在安装的时候会安装到自己指定的目录(default ./_install).这个选项一定要选,否则make install 后busybox将安装在原系统的/usr下,这将覆盖掉系统原有的命令。选择这个之后,make install后会在busybox目录下生成_install的目录,里面有busybox和指向它的链接)
添加交叉编译路径:
BusyboxSettings--->BuildOptions
(/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-)Cross Compiler prefix 
(/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi)Path to sysroot
 (-mfloat-abi=hard) Additional CFLAGS
()Additional LDFLAGS 
(-L/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/x86_64-pokysdk-linux/usr/lib/) Additional LDLIBS (具体交叉编译器路径按自己所放目录修改即可)
Networking Utilities--->【*】brctl 加载brctl
make&make install 编译busybox
将_install/bin文件下生成的busybox拷贝到开发板/bin/目录下替换原busybox
3.brctl建立网口桥接
ln -s /bin/busybox /bin/brcrl 创建brctl软连接
brctl addbr br0  创建网桥设备br0
brctl stp br0 off  关闭生成树协议
brctl addif br0 eth0  将eth0加入网桥
brctl addif br0 eth1 将eth1加入网桥

ifconfig eth1 down 关闭eth0
ifconfig eth0 down 关闭eth1
ifconfig eth0 0.0.0.0 up 配置eth0的ip为0.0.0.0
ifconfig eth1 0.0.0.0 up 配置eth1的ip为0.0.0.0
ifconfig br0 192.168.0.1 up 配置br0的ip并启动

此时两网口连接的设备可以互相ping通(需同网段)


已解决

未解决

只是看看

最新评论

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-11-22 16:54

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部