已复制
全屏展示
复制代码

缺少交换机情况下实现三台服务器互连


· 4 min read

在没有交换机的时候,如果多台服务器需要通信,可以使用网线将各个服务器连接起来,通过直连的方式通信,点与点之间直连,这时需要配置指定的路由。下面的实验环境是有 3 台服务器的实验环境。只有两台服务器的时候不需要配置路由,只需配置IP地址即可直连成功。

一. 环境说明

主机名 千兆网卡 万兆网卡1 万兆网卡2
node1 eth0:172.16.131.35 p2p1:192.168.1.110 p2p2:192.168.1.111
node2 eth0:172.16.131.36 p2p1:192.168.1.120 p2p2:192.168.1.121
node3 eth0:172.16.131.37 p2p1:192.168.1.130 p2p2:192.168.1.131
  • 拓扑图如下
  • 拓扑图说明
    172网段是的网卡eth0是千兆网卡,172网段之间可以正常访问,远程ssh连接到集群使用172网段。为了提高三台机器之间的传输速度,在每台服务器上分别增加了两个光纤模块,即两个网卡p2p1、p2p2
  • node1p2p1node2p2p1
  • node2p2p2node3p2p1
  • node1p2p2node3p2p2

二. 配置网卡IP

网卡的配置省略的不重要的一些配置,每个网卡的主要配置只有4行。

# 第一台 node1
cat /etc/sysconfig/network-scripts/ifcfg-p2p1
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.110
NETMASK=255.255.255.0

cat /etc/sysconfig/network-scripts/ifcfg-p2p2
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.111
NETMASK=255.255.255.0


# 第二台 node2
cat /etc/sysconfig/network-scripts/ifcfg-p2p1
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.120
NETMASK=255.255.255.0

cat /etc/sysconfig/network-scripts/ifcfg-p2p2
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.121
NETMASK=255.255.255.0


# 第三台 node3
cat /etc/sysconfig/network-scripts/ifcfg-p2p1
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.130
NETMASK=255.255.255.0

cat /etc/sysconfig/network-scripts/ifcfg-p2p2
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.131
NETMASK=255.255.255.0

三. 路由配置

当一台服务器有一个网口的时候,这时一个网段就一个接口,所以不需要配置路由。当有两个网卡,且两个网卡在同一个网段(192)时,就需要手动指定路由了。

3.1 关闭服务器的包转发功能

# 检测包转发功能是否开启,如果开启了则将其关闭,如果是开启的可能会造成环路
sysctl -p

# 配置文件
vim /etc/sysctl.conf
net.ipv4.ip_forward = 0

3.2 命令配置路由

配置的路由一定要和实际的拓扑连线相对应,否则一定不能联通。命令行配置的路由在重启网络以后会丢掉配置,如果要永久保存路由的话需要写到配置文件里面。

第一台 node1
sudo ip route add 192.168.1.120 dev p2p1
sudo ip route add 192.168.1.121 dev p2p1
sudo ip route add 192.168.1.130 dev p2p2
sudo ip route add 192.168.1.131 dev p2p2


第二台 node2
sudo ip route add 192.168.1.110 dev p2p1
sudo ip route add 192.168.1.111 dev p2p1
sudo ip route add 192.168.1.130 dev p2p2
sudo ip route add 192.168.1.131 dev p2p2


第三台 node3
sudo ip route add 192.168.1.120 dev p2p1
sudo ip route add 192.168.1.121 dev p2p1
sudo ip route add 192.168.1.110 dev p2p2
sudo ip route add 192.168.1.111 dev p2p2

3.3 配置文件路由

永久保存路由到配置文件。这样重启服务器、重启网络以后都会生效。

第一台 node1
cat /etc/sysconfig/network-scripts/route-p2p1
192.168.1.120 dev p2p1
192.168.1.121 dev p2p1

cat /etc/sysconfig/network-scripts/route-p2p2
192.168.1.130 dev p2p2
192.168.1.131 dev p2p2


第二台 node2
cat /etc/sysconfig/network-scripts/route-p2p1
192.168.1.110 dev p2p1
192.168.1.111 dev p2p1

cat /etc/sysconfig/network-scripts/route-p2p2
192.168.1.130 dev p2p2
192.168.1.131 dev p2p2


第三台 node3
cat /etc/sysconfig/network-scripts/route-p2p1
192.168.1.120 dev p2p1
192.168.1.121 dev p2p1

cat /etc/sysconfig/network-scripts/route-p2p2
192.168.1.110 dev p2p2
192.168.1.111 dev p2p2

四. 验证连通性

# 在三台服务器上重启网络
sudo systemctl restart network

# node1 上
ping 192.168.1.120
ping 192.168.1.121
ping 192.168.1.130
ping 192.168.1.131


# node2 上
ping 192.168.1.110
ping 192.168.1.111
ping 192.168.1.130
ping 192.168.1.131


# node3 上
ping 192.168.1.110
ping 192.168.1.111
ping 192.168.1.120
ping 192.168.1.121
🔗

文章推荐