拓扑图镇楼
前言
先说一下我的机器配置吧!我的机器是戴尔 7010 sff 小主机,比自己组装的itx还小巧,
我也不打高端游戏,cpu直接e3神教1230v2,搞一个1050ti的刀卡4k解码全部搞定,
还能打个4k特效全开的LOL足够了,这才是真正的itx小钢炮😄
说正题,最近又多了两台公司淘汰的笔记本电脑,既然是淘汰机肯定是陪追不行了,
就是办公本本,但是CPU是i5的虽说是3代吧,装个ubuntu、Debian、centos、redhat
或者桌面级deepin,没错全是Linux😄
既然想做多服务器管理怎么着也不能用无线网,不稳定不说多机器共享文件网速实在不敢恭维
更何况机器都有千兆网络接口干嘛用废物Wi-Fi
于是乎在小黄鱼淘了个双网口的博通bcm5709c,也可以直接上4口的就是价格高了点
这么折腾下来我的sff主机就有两张网卡,三个网络接口了,接下来的问题就是通过什么设备把这三个
网口共享起来给其他两个电脑用,一开始也想到用交换机或者路由器,但是我都有独立网卡了
还买那些设备岂不是浪费,于是乎开始了双卡3网口的折腾之路。。。
Linux网络管理
首先我们来说一下Linux是怎么管理网络的,一般常见的有两种:network、NetworkManege
这两个模块都能管理我们的网络,但是不能同时启用,否则会导致网络冲突,网卡点不亮。
NetworkManege是红帽子公司研发的,主要针对无线网卡做的优化,如果您现在正在使用笔记本电脑
或者主机上有无线网卡,那么NetworkManege无疑是最佳选择。如果您的主机就是准备做服务器用的
根本不需要无线网卡,为了追求稳定的网络环境一直用网线连接,那么可以选择更加轻量级的network
来管理网络。
小编试过把两者都禁用掉,直接配置网络文件手写IP地址,重启后两张网卡灯怎么也点不亮😂
我大胆猜测这两个组件是管理网络链接和驱动的,禁用后连驱动都没了还搞什么配置文件。。。
Windows实现网络共享
我也是再次多舌一句,其实很简单,现在的电脑至少都是win10了所以驱动不用考虑,独立网卡插上
开机就会自动扫描硬件安装好驱动,如果低于win10请自行安装😄
然后打开网络,网络适配器,在页面里会看到所有网络端口,几口网卡就有几个端口,然后把这些
本地连接123...全部选上,右击,桥接,本片完。。。
最好给网桥手动设置一个IP地址,后期便于管理这台主机
Linux实现网络共享
Linux共享所有网络端口一般常用的有两种方式,一种是系统本身支持的NAT(网络地址转换)技术
还有一种就是需要独立安装的网络桥接技术bridge0
首先说最简单的nat技术吧,为什么说简单,是因为直接用系统自带的iptables就可以了,不需要额外
组件来支撑。
# 第一步、开启IPv4转发
sudo vim /etc/sysctl.conf
# 找到net.ipv4.ip_forward=0这一行,把0改为1
sudo reboot # 重启一下机器
# 此时就可以用iptables开始转发网络请求了
sudo iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE
# 上面这条指令就是把所有网络数据包都通过eth0这个网络接口来转发,接口名称不叫这个的请自行更换
# 为了防止重启机器后iptables规则失效需要加入永久保存中
sudo iptables-save > /etc/iptables-rules
sudo vim /etc/network/interfaces
加入一行:pre-up iptables-restore < /etc/iptables-rules
# 接下来就是几台主机的IP设置
主服务器IP设置:
#主网口:可以访问外网,配置与路由器一致即可
IP地址:192.168.1.101
子网掩码:255.255.255.0
网关:192.168.1.1
DNS:8.8.8.8
#第二网口:不设置网关
IP地址:192.168.2.1
子网掩码:255.255.255.0
#第三网口:不设置网关
IP地址:192.168.3.1
子网掩码:255.255.255.0
#如果还有多余网口以此类推......
从服务器IP设置:
服务器1:
IP地址:192.168.2.101
子网掩码:255.255.255.0
网关:192.168.2.1 # 其实就是第二网口IP
DNS:8.8.8.8
服务器2:
IP地址:192.168.3.101
子网掩码:255.255.255.0
网关:192.168.3.1 # 其实就是第三网口IP
DNS:8.8.8.8
这么折腾下来基本上都能上外网了,就是nat技术会把所有私有IP机器与局域网也就是
直接链接路由器的机器隔离开来,互相ping不通
那么问题来了,有没有把所有机器都暴露出来,就好像各自都去链接了路由器一样呢?
而且还各自有一个192.168.1.x的IP地址,这样方便远程管理。
答案是:网络桥接,简称网桥,bridge0
Linux网络桥接
通过nat配置可以实现上网功能,但是不方便管理其他机器,为了更好的管理其他机器我们把nat改为桥接模式
先说踩坑记:如果是networkManage管理网络的不用禁用它,否则会导致网卡失效,一切配置都白搭
# 首先安装bridge-utils工具包
sudo apt install bridge-utils -y
# 目录下增加br0网桥配置文件
// interface文件中的静态IP配置注释掉
sudo vim /etc/network/interfaces.d/br0
# 配置内容如下
auto lo br0
iface lo inet loopback
iface eth0 inet manual
iface eth1 inet manual
iface eth2 inet manual
iface br0 inet static
bridge_ports eth0 eth1 eth2 # 所有网口交给网桥管理
address 192.168.1.101 # 所有配置跟路由器保持一致
broadcast 192.168.1.255
netmask 255.255.255.0
gateway 192.168.1.1
# 最后重启网络服务就好了
sudo systemctl restart NetworkManege
# 其他机器只要按照路由器IP正常配置就好了
IP地址:192.168.1.xxx
子网掩码:255.255.255.0
网关:192.168.1.1
DNS:8.8.8.8
# 这样就可以远程访问所有主机了
后记
其实nat改为bridge还有一个原因就是网速问题,虽说影响不大,但是对于一个极客来说是不能
接受的。毕竟nat是通过包转发技术,所有信息需要按照主网口的协议重新包装一边比较浪费资源
所以不如选择bridge技术,就跟一个物理路由器一样的,只不过是在服务器内部实现的虚拟的而已