Networking网络配置和Bridge配置

如题所述

第1个回答  2022-06-13
Ubuntu16.04的网络配置由NetworkManager托管,有可视化界面方便用户操作,如下图。

除了NetworkManager配置网络,还有一种networking也可以配置,但是会和NetworkManager打架,所以首先禁用NetworkManager。

配置Networking流程大致是:

systemctl stop NetworkManager.service
systemctl disable NetworkManager.service

彻底删除avahi-daemon和avahi-autoipd。这两个包是兼容苹果系统的自动网络发现服务,会干扰传统的dhcp运作。

比如这样一个interfaces文件:

interfaces文件中,以下这几行是直接被ifup与ifdown文件使用的。

而以下几行与Networking服务配置使用:

Networking服务在系统启动、系统关闭和网线插拔时起作用。

因此,可以也可以不用restart networking,而是使用ifup/ifdown进行细粒度控制。

接来下的配置都是针对网口,所以需要知道有哪些网口,网口名通常为eth0或者enp0s3,如果是无线网口名可能为wlan0。
ls /sys/class/net
ip addr

网桥模式可以把两个不同网口的子网组合在一起,对外看上去好像是一个子网,所以也叫透明模式。

该配置在虚拟机上测试的。

enp0s3是连接的外网。

配置bridge后:

结论:bridge连接的网口enp0s3的配置应该删除,然后重启电脑ifconfig才生效。

该配置在虚拟机上测试的。

enp0s3是连接的外网,enp0s8是内网。

配置bridge后:

该配置在工控机测试的。

配置bridge后,拿两台电脑,一台连enp3s0口,另一台连enp4s0口,两台电脑配置的ip地址都是40网段,比如192.168.40.10和192.168.40.11。

该配置在工控机测试的。配置完后br0没有分配地址,这是最简单的配置。

配置bridge后,拿两台电脑,一台连enp3s0口,另一台连enp4s0口,两台电脑配置的ip地址都是40网段,比如192.168.40.10和192.168.40.11。

设置bridge连接网口

设置bridge具体信息

若ifconfig后没有br0信息,手动加载

通过以上多种配置和实验,证明重启系统生效更彻底。
那我们在完成功能开发的时候,不可能每次文件配置(interfaces)之后,要求用户重启系统来让网络配置彻底生效。
所以我的解决办法是,通过ip命令配置立即生效(ip命令配置是临时的,重启系统之后会丢失,所以再配合文件配置),同时文件配置(interfaces)永久生效。
想知道ip命令如何配置请看《ip命令配置网络和网桥》,移步 https://www.jianshu.com/p/26b4db8b1706

重启不一定会成功,查看报错日志很重要。

所谓网络配置,可细分为三类:

分别对应如下命令查看:
相似回答
大家正在搜