最近调试Xavier,固定本机eth0 IP后,只有一个网口可以接收到传感器设备,沟通后了解解决方法有两个:
1. 不同网口配置不同IP
即每个网口配置一个IP网段,需要网口连接的传感器同样也设置相应网段;
例如eth0设置192.168.20.2,则连接第一个网口的传感器IP需要设置成192.168.20.xx<注意部分传感器有目标IP设置,即数据只能传给固定的一个IP,这个时候需要与eth0的IP对应>;
eth1设置192.168.30.2,则连接第二个网口的传感器IP需要设置成192.168.30.xx;
下同;
2. 设置网络桥接
即将所有网口IP桥接到同一个网段,脚本贴上:
#!/bin/bash
read -p "请确认是否为同一网段(y/n):" choose
if [ $choose = "n" ]
then
sudo su - << EOF
cat > /etc/network/interfaces << HERE
iface lo inet loopback
auto eth0 eth1 eth2 eth3 eth4
HERE
sed -i "s/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g" /etc/sysctl.conf
sysctl -p
EOF
fi
if [ $choose = "y" ]
then
sudo su - << EOF
brctl addbr br0 #新建网桥
cat > /etc/network/interfaces << HERE
auto lo br0
iface lo inet loopback
#配置网桥,需要占用一个该网段的ip地址
iface br0 inet static
address 192.168.20.2
netmask 255.255.255.0
gateway 192.168.20.1
bridge_ports eth0 eth1 eth2 eth3 # 可以在这里决定哪几个网口走网桥传输数据
HERE
sed -i "s/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g" /etc/sysctl.conf
sysctl -p
brctl show br0
EOF
fi