【发布时间】:2022-05-14 00:50:22
【问题描述】:
我正在尝试使用 openvswitch 更改 openwrt 中的 linux 桥接器,并使用 openvswitch 包为 tp-link tlwr1043nd 编译 openwrt,它已经完成...问题是当我删除 br-lan(linux 桥接器)并替换用openvswitch,它总是错误和变砖
这是我用来更改为 ovs 的脚本:
我用((/root/ovs-tplink.sh > /dev/null 2&>1)&)& 运行它,这样它就可以在后台运行,
#!/bin/sh
OVS_BR=ovslan
#IP Controller, Port for OvS Manager, Linux Bridge
IP_CONTROLLER=192.168.0.100
PORT_CONTROLLER=6633
LINUX_BRIDGE=br-lan
echo -e "\033[0;32m Declare Necessary Variable Successful"
# Add Bridge Open vSwitch
ovs-vsctl --may-exist add-br $OVS_BR
echo -e "\033[0;32m Add OvS Bridge $OVS_BR Succesful"
sleep 2
#Delete Port if added to $LINUX_BRIDGE
for i in eth0.1 eth0.2 eth0.3 eth0.4 eth0.5 eth0.6
do
brctl delif $LINUX_BRIDGE $i
echo -e "\033[0;32m Delete Port $i in $LINUX_BRIDGE successful"
sleep 1
done
# Add Port to Bridge
for i in eth0.1 eth0.2 eth0.3 eth0.4 eth0.5 eth0.6 wlan0
do
ovs-vsctl --may-exist add-port $OVS_BR $i
echo -e "\033[0;32m Add OvS Port $i to $OVS_BR successful"
sleep 1
done
# Up The Interface
for i in eth0.1 eth0.2 eth0.3 eth0.4 eth0.5 eth0.6 wlan0 ovslan
do
ifconfig $i up
echo -e "\033[0;32m Up interface $i"
sleep 1
done
#Set All Options Necessary for Controller
ovs-vsctl set bridge $OVS_BR stp_enable=true
echo -e "\033[0;32m Set STP Enabled True in $OVS_BR Successful"
sleep 1
ovs-vsctl set-controller $OVS_BR tcp:$IP_CONTROLLER:$PORT_CONTROLLER
echo -e "\033[0;32m Set IP:$IP_CONTROLLER as Controller in $OVS_BR and Successful"
sleep 1
ovs-vsctl set-fail-mode $OVS_BR standalone
echo -e "\033[0;32m Set Standalone Mode in $OVS_BR and Successful"
sleep 1
ovs-vsctl set bridge $OVS_BR protocols=OpenFlow13
echo -e "\033[0;32m Set OpenFlow Protocol to 1.3 in $OVS_BR Successful"
sleep 1
ovs-vsctl set-manager ptcp:6640
sleep 1
ovs-ofctl del-flows $OVS_BR
echo -e "\033[0;32m Delete Previous Flows in $OVS_BR and Successful"
sleep 1
echo -e "\033[0;32m Restart Network Service. . . . . . "
/etc/init.d/network restart
echo -e "\033[0;32m Restart Network Service Successful"
# Check Result
echo -e "\033[0;32m Result : "
ovs-vsctl show
echo " "
reboot
exit 0
这是 /etc/config/network 中的网络配置:
config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '127.0.0.1'
option netmask '255.0.0.0'
config globals 'globals'
option ula_prefix 'fded:6c7d:48c4::/48'
config interface 'lan'
option type 'bridge'
option ifname 'eth0.1 eth0.2 eth0.3 eth0.4 eth0.5 eth0.6'
option proto 'static'
option ipaddr '192.168.0.110'
option netmask '255.255.255.0'
option gateway '192.168.0.1'
config interface 'ovslan'
option ifname 'ovslan'
option proto 'static'
option ipaddr '192.168.0.111'
option netmask '255.255.255.0'
option gateway '192.168.0.1'
config interface 'eth0_1'
option ifname 'eth0.1'
option proto 'static'
config interface 'wan'
option ifname 'ovs-wan'
option proto 'dhcp'
config interface 'eth0_2'
option ifname 'eth0.2'
option proto 'dhcp'
config interface 'ovs1'
option proto 'static'
option ifname 'eth0.3'
option proto 'dhcp'
config interface 'ovs2'
option proto 'static'
option ifname 'eth0.4'
option proto 'dhcp'
config interface 'ovs3'
option proto 'static'
option ifname 'eth0.5'
option proto 'dhcp'
config interface 'ovs4'
option proto 'static'
option ifname 'eth0.6'
option proto 'dhcp'
config switch
option name 'switch0'
option reset '1'
option enable_vlan '1'
config switch_vlan
option device 'switch0'
option vlan '1'
option ports '0t 6'
option vid '1'
config switch_vlan
option device 'switch0'
option vlan '2'
option ports '0t 5'
option vid '2'
config switch_vlan
option device 'switch0'
option vlan '3'
option vid '3'
option ports '0t 4'
config switch_vlan
option device 'switch0'
option vlan '4'
option vid '4'
option ports '0t 3'
config switch_vlan
option device 'switch0'
option vlan '5'
option vid '5'
option ports '0t 2'
config switch_vlan
option device 'switch0'
option vlan '6'
option vid '6'
option ports '0t 1'
我在使用openvswitch网桥时使用ovslan给出统计IP, 请大家帮我解决这个问题...
谢谢你的回答...
【问题讨论】:
-
谢谢大家...我已经解决了问题
-
感谢您花时间发布您的解决方案,这对其他人有帮助。我可以请您使用左侧的勾选框,在您的答案旁边。这会将您的解决方案标记为已接受的解决方案,并让其他人知道您不再需要帮助。无论如何,谢谢和欢迎。
标签: openwrt openvswitch