购买的腾讯云CVM服务器默认只有一个公网IP的,如果您的业务有多IP的需求,可以通过云服务器绑定弹性网卡,再通过弹性网卡绑定弹性公网IP的方式实现。本文为介绍如何通过绑定弹性网卡的方式,绑定弹性公网IP的方式。
一、配置前需了解
1、腾讯云各配置服务器弹性网卡及绑定ip数配额
云服务器配置 | 弹性网卡数 | 单网卡绑定ip数 |
---|---|---|
CPU:1核内存:1G | 2 | 2 |
CPU:1核内存:大于1G | 2 | 6 |
CPU:2核 | 2 | 10 |
CPU:4核内存:小于等于16G | 4 | 10 |
CPU:4核内存:大于16G | 4 | 20 |
CPU:8-12核 | 6 | 20 |
CPU:大于12核 | 8 | 30 |
2、弹性公网IP绑定云服务器限制
从2019年9月18日(含)起,根据 CPU 配置的差异,单台云服务器支持绑定的公网 IP 数量上限将会发生变化,具体数额如下表所示:
注意:
在2019年9月18日零点前购买的云服务器不受下述限制。
如果您的云服务器是通过官网活动购买,则云服务器支持绑定的公网 IP 数量以活动规则为准。
云服务器的 CPU 数 | 支持绑定的公网 IP 数量上限(含普通公网 IP 和 EIP) |
---|---|
CPU:1 - 5 | 2 |
CPU:6 - 11 | 3 |
CPU:12 - 17 | 4 |
CPU:18 - 23 | 5 |
CPU:24 - 29 | 6 |
CPU:30 - 35 | 7 |
CPU:36 - 41 | 8 |
CPU:42 - 47 | 9 |
CPU:≥ 48 | 10 |
3、查看网关
如果您未更改其他设置,则网关为子网网段的首个 IP。例如,子网网段为:192.168.0.0/24,则网关为:192.168.0.1
4、查看子网掩码
CIDR 位数与交换机子网掩码的对应关系如下表所示:
CIDR 位数 | 子网掩码 |
---|---|
/28 | 255.255.255.240 |
/27 | 255.255.255.224 |
/26 | 255.255.255.192 |
/25 | 255.255.255.128 |
/24 | 255.255.255.0 |
/23 | 255.255.254.0 |
/22 | 255.255.252.0 |
/21 | 255.255.248.0 |
/20 | 255.255.240.0 |
/19 | 255.255.224.0 |
/18 | 255.255.192.0 |
/17 | 255.255.128.0 |
/16 | 255.255.0.0 |
二、详细配置流程
1、登录腾讯云服务器控制台,如果没有看到您购买的云服务器,左上角选择地域
2、单击腾讯云CVM服务器的【实例ID】![]
3、进入云服务器基本信息页面后,单击【弹性网卡】>> 【绑定弹性网卡】
4、在弹出的绑定网卡的页面中,选择新建弹性网卡并绑定,如果需要绑定多个ip就需要新建多个辅助网卡,可以根据您的交换机网段自定义内网ip,方便后续添加IP容易记。
注意:本示例中的云服务器是1核2G,参考弹性网卡及绑定ip数配额,可以绑定6个ip。如果您只需要多一个ip,没必要向我这样新建那么多辅助网卡。
5、登录弹性公网ip控制台,根据需求创建弹性公网ip地址,并绑定到辅助弹性网卡主IP地址上。绑定完成后其他的IP地址绑定公网ip的为灰色了,说明本示例的云服务器仅支持绑定一个弹性公网ip。
注意:本示例中的云服务器是1核2G,参考弹性公网IP绑定云服务器限制,支持绑定的公网 IP 数量上限2个。
6、为辅助网卡绑定安全组,绑定的安全组可以和主网卡一致,该步骤勿忽略。
7、测试新绑定的弹性公网IP目前还不能正常使用,新绑定的弹性公网ip无法ping通,原本服务器的公网ip可以正常ping通。
8、原因是没有加载出辅助网卡,需要修改网卡配置文件,查看网卡信息
[root@VM-16-5-centos ~]# 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
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 52:54:00:37:8b:7a brd ff:ff:ff:ff:ff:ff
inet 172.16.16.5/20 brd 172.16.31.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:fe37:8b7a/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 20:90:6f:da:dd:fb brd ff:ff:ff:ff:ff:ff
9、复制eth0的网卡文件
[root@VM-16-5-centos ~]# cp /etc/sysconfig/network-scripts/ifcfg-eth{0,1}
10、查看eth1文件是否成功,目前的eth1文件只是拷贝eth0
[root@VM-16-5-centos ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
# Created by cloud-init on instance boot automatically, do not edit.
#
BOOTPROTO=dhcp
DEVICE=eth0
HWADDR=52:54:00:37:8b:7a
ONBOOT=yes
PERSISTENT_DHCLIENT=yes
TYPE=Ethernet
USERCTL=no
11、修改eth1文件
[root@VM-16-5-centos ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
# Created by cloud-init on instance boot automatically, do not edit.
# 此处修改为staticBOOTPROTO=static
BOOTPROTO=static
# 此处改为eth1
DEVICE=eth1
# 注释HWADDR=52:54:00:37:8b:7a此行
# HWADDR=52:54:00:37:8b:7a
# 配置主ip
IPADDR0=172.16.16.100
NETMASK0= 255.255.240.0
# # 配置辅助ip1
IPADDR1=172.16.16.101
NETMASK1= 255.255.240.0
# #
# # 配置辅助ip2
IPADDR1=172.16.16.102
NETMASK1= 255.255.240.0
# #
# # 配置辅助ip3
IPADDR1=172.16.16.103
NETMASK1= 255.255.240.0
# #
# # 配置辅助ip4
IPADDR1=172.16.16.104
NETMASK1= 255.255.240.0
# #
# # 配置辅助ip5
IPADDR1=172.16.16.105
NETMASK1= 255.255.240.0
# #
# # 配置网关
GATEWAY=172.16.16.1
# #
ONBOOT=yes
PERSISTENT_DHCLIENT=yes
TYPE=Ethernet
USERCTL=no
12、关闭 rp_filter 校验,该步骤勿忽略。
[root@VM-16-5-centos ~]# vim /etc/sysctl.conf
# 找到第16行的rp_filter,如果有,就注释掉
# net.ipv4.conf.default.rp_filter = 1 如果有就注释掉
# 在文件结尾加上如下4行
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.eth1.rp_filter = 0
13、使其生效
[root@VM-16-5-centos ~]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.eth1.rp_filter = 0
net.ipv4.conf.default.accept_source_route = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
net.ipv4.conf.all.promote_secondaries = 1
net.ipv4.conf.default.promote_secondaries = 1
net.ipv6.neigh.default.gc_thresh3 = 4096
net.ipv4.neigh.default.gc_thresh3 = 4096
kernel.softlockup_panic = 1
kernel.sysrq = 1
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
kernel.numa_balancing = 0
kernel.shmmax = 68719476736
kernel.printk = 5
14、重启网卡
[root@VM-16-5-centos ~]# systemctl restart network.service
15、查看配置后的效果
[root@VM-16-5-centos ~]# 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
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 52:54:00:37:8b:7a brd ff:ff:ff:ff:ff:ff
inet 172.16.16.5/20 brd 172.16.31.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:fe37:8b7a/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 20:90:6f:da:dd:fb brd ff:ff:ff:ff:ff:ff
inet 172.16.16.100/16 brd 172.16.255.255 scope global eth1
valid_lft forever preferred_lft forever
inet 172.16.16.105/16 brd 172.16.255.255 scope global secondary eth1
valid_lft forever preferred_lft forever
inet6 fe80::2290:6fff:feda:ddfb/64 scope link
valid_lft forever preferred_lft forever
16、测试新绑定的弹性公网IP已经可以正常使用