腾讯云云托付物理服务器二次虚拟化网络配置

CHC物理服务器不提供虚拟化方案,用户需自行选用虚拟化方案。本文,小编为大家介绍一下腾讯云云托付物理服务器二次虚拟化网络配置的方法。

  操作步骤

  申请DHCP IP

在执行虚拟化方案前,请根据具体的IP地址需求申请DHCP IP地址,在安装虚拟机时将DHCP IP作为虚拟机的IP地址。申请步骤如下:

1、进入API Explorer工具的CreateDhcpIp接口页面。

2、根据实际情况输入region、vpcid、subnetID、dhcpIpName、SecondaryPrivateIpAddressCount(个数)。

3、输入后单击发起调用,调用成功后请保存返回的响应结果。如下图所示,在本例中,调用API生成了一个DHCP IP:10.99.0.5(即下图中PrivateIpAddress的值)。

腾讯云云托付物理服务器二次虚拟化网络配置

  发送GARP包

该步骤将IP地址绑定至虚拟机。本文提供以下两种方式,您可按需选择其中一种即可:

方式1

操作对象虚拟机

操作方式发送如下arping指令:

arping -c 运行次数 -I 虚拟机的接口 -U dhcp ip

示例如下:

arping -c 1 -I eth0 -U 10.99.0.5

特点:无法指定mac地址,因此只能在虚拟机上执行

方式2

操作对象

虚拟机、宿主机

操作方式

执行arp.py脚本,命令如下。执行10秒后,请通过Ctrl+c停止脚本。

python arp.py  --iface 接口--src_mac 虚拟机mac  --src_ip 虚拟机ip --dst_ip 虚拟机ip --dst_mac 虚拟机mac

示例如下:

python arp.py  --iface eth0 --src_mac 28:6e:d4:89:91:cf  --src_ip 10.27.8.155 --dst_ip 10.27.8.155 --dst_mac 28:6e:d4:89:91:cf

特点:需获取虚拟机的mac地址,且需有Python环境。

执行完成后,虚拟机与同VPC的其他主机即可正常通信。

  查询DHCP IP是否绑定成功

发送GARP包后,可以通过接口自助查询是否绑定成功。步骤如下:

1、进入API Explorer工具的DescribeDhcpIps接口页面。

2、根据实际情况输入region及DhcpIpIds。其中,DhcpIpIds请使用申请DHCP IP步骤中获取的PrivateIpAddress。

3、单击发起调用,通过返回结果确认是否绑定成功。

  虚拟机访问公网

若虚拟机需要访问公网,可以通过DHCP IP绑定EIP的方式实现。步骤如下:

1、获取一个EIP。

2、进入API Explorer工具的AssociateDhcpIpWithAddressIp接口页面。

3、根据实际情况输入DHCP IP及EIP,发起调用后即可。

  不支持热迁移

目前CHC物理服务器不支持用户的子机的热迁移,原因如下:

子机上线需要发送GARP,被网卡捕获上送控制面。子机迁移到另外一台CHC服务器后,无法主动发送GARP。

子机从一台CHC迁移到另外一台CHC时,源网卡上的相关会话不会同步到目标CHC网卡,会造成已有连接中断。

  附录

arp.py脚本

#!/usr/bin/python
# -*- coding: utf-8 -*-
import socket, binascii,struct,os,subprocess,sys,threading,json,re,argparse,time


class arping():
    def __init__(self, iface):
        self.sock = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, )
        self.sock.bind((iface, 0))
    def arp_request(self, src_ip, src_mac, dst_ip, dst_mac):
        src_mac_addr = binascii.a2b_hex(src_mac.replace(':',''))
        dst_mac_addr = binascii.a2b_hex(dst_mac.replace(':',''))


        src_ip = socket.inet_aton(src_ip)
        dst_ip = socket.inet_aton(dst_ip)


        eth = "\xff\xff\xff\xff\xff\xff"+src_mac_addr+"\x08\x06"+ \
            "\x00\x01\x08\x00\x06\x04\x00\x01"+src_mac_addr+src_ip+dst_mac_addr+dst_ip


        self.sock.send(eth)


if __name__ == '__main__':
    parser_t = argparse.ArgumentParser(description='arp_req')
    parser_t.add_argument('--iface',   dest= 'iface',   type=str, help='interface')
    parser_t.add_argument('--src_mac', dest= 'src_mac', type=str, help='source mac')
    parser_t.add_argument('--src_ip',  dest= 'src_ip',  type=str, help='source ip')
    parser_t.add_argument('--dst_mac', dest= 'dst_mac',type=str, help='destination mac')
    parser_t.add_argument('--dst_ip',  dest= 'dst_ip', type=str, help='destination ip')


    args = parser_t.parse_args()
    while True:
        handler = arping(args.iface)
        handler.arp_request(args.src_ip, args.src_mac, args.dst_ip, args.dst_mac)
        time.sleep(10)
使用教程

语雀如何开启关注通知?语雀开启关注通知的方法

2023-1-9 16:59:24

使用教程

阿里云弹性云手机绑定和解绑弹性公网IP

2023-1-10 13:23:27

相关推荐