为ECS Ubuntu 18.04实例配置辅助私网IP地址

本文介绍,如何给Ubuntu 18.04系统配置辅助私网ip。
注:需要使用专有网络,经典网络不支持此方案。

ECS支持给网卡配置辅助私网ip地址,可以实现给一个网卡配置多个私网ip进行使用。
关于辅助私网ip介绍,参见文档 https://help.aliyun.com/document_detail/101180.html

场景一:为主网卡配置辅助私网ip。

1、在ECS控制台,给ECS实例的主网卡,分配辅助私网ip。
注:默认eth0网卡是主网卡,主网卡是ECS初始提供的网卡,
为ECS Ubuntu 18.04实例配置辅助私网IP地址

本例中,主网卡默认的私网ip是 192.168.50.59,手动增加的辅助私网ip是192.168.50.61 和 192.168.50.60。

2、在服务器系统内部,修改网卡配置文件,增加私网ip的配置。

2.1 查看服务器的内网网关。

命令 route -n 
root@iZ2ze79lofu2pwszuei3jsZ:~# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.50.253  0.0.0.0         UG    0      0        0 eth0
192.168.50.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0

以上结果中,0.0.0.0 对应的192.168.50.253是当前内网网关地址。

2.2 查看服务器的DNS地址

命令 systemd-resolve --status
root@iZ2ze79lofu2pwszuei3jsZ:~# systemd-resolve --status
Global
          DNSSEC NTA: 10.in-addr.arpa
                      16.172.in-addr.arpa
                      168.192.in-addr.arpa
                      17.172.in-addr.arpa
                      18.172.in-addr.arpa
                      19.172.in-addr.arpa
                      20.172.in-addr.arpa
                      21.172.in-addr.arpa
                      22.172.in-addr.arpa
                      23.172.in-addr.arpa
                      24.172.in-addr.arpa
                      25.172.in-addr.arpa
                      26.172.in-addr.arpa
                      27.172.in-addr.arpa
                      28.172.in-addr.arpa
                      29.172.in-addr.arpa
                      30.172.in-addr.arpa
                      31.172.in-addr.arpa
                      corp
                      d.f.ip6.arpa
                      home
                      internal
                      intranet
                      lan
                      local
                      private
                      test

Link 2 (eth0)
      Current Scopes: DNS
       LLMNR setting: yes
MulticastDNS setting: no
      DNSSEC setting: no
    DNSSEC supported: no
         DNS Servers: 100.100.2.136
                      100.100.2.138
root@iZ2ze79lofu2pwszuei3jsZ:~#

最后 DNS Servers 对应是DNS地址。

2.3 修改网卡配置文件,增加私网ip的配置

配置文件 /etc/netplan/99-{netcfg或者eth0}.yaml

首先把初始的配置文件备份一下

cp /etc/netplan/99-netcfg.yaml /etc/netplan/99-netcfg.yaml.bak

如果有需要,可以直接用备份恢复配置文件。
修改配置文件 vim /etc/netplan/99-{netcfg或者eth0}.yaml 改成如下方式

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      addresses:
        - 192.168.50.59/24   (网络初始默认的私网ip,/24是子网掩码,括号里的中文注释不用写到配置里)
        - 192.168.50.60/24   (新增加的辅助私网ip)
        - 192.168.50.61/24   (新增加的辅助私网ip)
      gateway4: 192.168.50.253  (内网网关)
      nameservers:
        addresses: [100.100.2.136, 100.100.2.138]   (DNS地址)

内网网关、DNS地址,从前边2.1、2.2的步骤中可以查看到。
辅助私网ip的子网掩码,在步骤1 中可以获取到。

3、应用网卡配置文件,使增加的辅助私网ip配置生效。

命令 netplan apply

4、查看ip配置是否生效。

命令 ip a 
root@iZ2ze79lofu2pwszuei3jsZ:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0e:4b:26 brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.59/24 brd 192.168.50.255 scope global dynamic eth0
       valid_lft 315342332sec preferred_lft 315342332sec
    inet 192.168.50.60/24 brd 192.168.50.255 scope global secondary eth0
       valid_lft forever preferred_lft forever
    inet 192.168.50.61/24 brd 192.168.50.255 scope global secondary eth0
       valid_lft forever preferred_lft forever

结果中显示eth0主网卡上,一共绑定了3个ip地址,说明配置成功了。
可以从同一个VPC里其他的ECS上,ping 辅助私网ip,验证网络连通。

场景二:为弹性网卡配置辅助私网ip

1、创建弹性网卡
帮助文档 https://help.aliyun.com/document_detail/63408.html
为ECS Ubuntu 18.04实例配置辅助私网IP地址

2、弹性网卡绑定到ECS
帮助文档 https://help.aliyun.com/document_detail/58503.html
为ECS Ubuntu 18.04实例配置辅助私网IP地址

3、在服务器系统里查看、配置弹性网卡。
命令 ip a

root@iZ2ze79lofu2pwszuei3jsZ:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0e:4b:26 brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.59/24 brd 192.168.50.255 scope global dynamic eth0
       valid_lft 315341029sec preferred_lft 315341029sec
    inet 192.168.50.60/24 brd 192.168.50.255 scope global secondary eth0
       valid_lft forever preferred_lft forever
    inet 192.168.50.61/24 brd 192.168.50.255 scope global secondary eth0
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 00:16:3e:03:e3:97 brd ff:ff:ff:ff:ff:ff

可以看到多了一块网卡eth1,这块就是绑定的弹性网卡,但是网卡还没有配置ip,需要手动配置一下。

4、在ECS控制台--网络与安全--弹性网卡,网卡列表里,查看到弹性网卡分配的私网ip。
为ECS Ubuntu 18.04实例配置辅助私网IP地址
网卡的MAC地址,和上一步命令ip a 看到的eth1网卡MAC地址一样。

5、增加弹性网卡的配置文件,配置ip地址。

5.1 ECS控制台上,给弹性网卡,分配辅助私网ip。
为ECS Ubuntu 18.04实例配置辅助私网IP地址

5.2 查看服务器的内网网关。

命令 route -n
可参考“场景一”中的2.1步骤

5.3 查看服务器的DNS地址

命令 systemd-resolve --status
可参考“场景一”中的2.2步骤

5.4 在服务器系统里添加弹性网卡配置文件

用主网卡eth0的配置文件,复制一份为弹性网卡eth1的配置文件
cp /etc/netplan/99-{netcfg或者eth0}.yaml /etc/netplan/99-eth1.yaml

修改弹性网卡eth1的配置文件
vim /etc/netplan/99-eth1.yaml 改成如下方式

network:
  version: 2
  renderer: networkd
  ethernets:
    eth1:           (网卡名称改成弹性网卡的eth1,括号里的中文注释不用写到配置里)
      addresses:
        - 192.168.50.62/24    (弹性网卡的主私网ip,/24是子网掩码)
        - 192.168.50.63/24    (新增加的辅助私网ip)
        - 192.168.50.64/24     (新增加的辅助私网ip)
      gateway4: 192.168.50.253  (内网网关)
      nameservers:
        addresses: [100.100.2.136, 100.100.2.138]    (DNS地址)

内网网关、DNS地址,从前边5.2、5.3 的步骤中可以查看到。
辅助私网ip的子网掩码,在步骤5.1中可以获取到。

6、应用网卡配置文件,使增加的弹性网卡的ip配置生效。

命令 netplan apply

7、查看弹性网卡的ip配置是否生效。

命令 ip a 
root@iZ2ze79lofu2pwszuei3jsZ:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0e:4b:26 brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.59/24 brd 192.168.50.255 scope global dynamic eth0
       valid_lft 315339942sec preferred_lft 315339942sec
    inet 192.168.50.60/24 brd 192.168.50.255 scope global secondary eth0
       valid_lft forever preferred_lft forever
    inet 192.168.50.61/24 brd 192.168.50.255 scope global secondary eth0
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:03:e3:97 brd ff:ff:ff:ff:ff:ff
    inet 192.168.50.62/24 brd 192.168.50.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet 192.168.50.63/24 brd 192.168.50.255 scope global secondary eth1
       valid_lft forever preferred_lft forever
    inet 192.168.50.64/24 brd 192.168.50.255 scope global secondary eth1
       valid_lft forever preferred_lft forever

结果中显示eth1弹性网卡上,一共绑定了3个ip地址,说明配置成功了。
可以从同一个VPC里其他的ECS上,ping 辅助私网ip,验证网络连通。

上一篇:ab压力测试(入门)


下一篇:Python sorted()排序