弹性公网 IP

弹性公网 IP 地址( EIP ),简称弹性 IP 地址或弹性 IP ,是专为动态云计算设计的静态 IP 地址。

弹性公网 IP 是某地域下一个固定不变的公网 IP 地址。

借助弹性公网 IP 地址,您可以快速将地址重新映射到账户中的另一个实例(或 NAT 网关实例 ),从而屏蔽实例故障。

例如,如果您需要将自定义域名重新映射到一个新实例的公网 IP 上,映射关系在 Internet 上传播更新可能需要十几个小时至几十个小时的时间,请求仍然将全部被解析到原有实例上,出现这段时间内新实例无法接收到请求的问题。弹性 IP 可以解决这样的问题,快速将请求指向到新的实例,即新实例绑定的弹性IP不变,不用重新修改域名绑定弹性IP地址。

 

弹性公网IP类型

腾讯云有两类账户:

第一类账户

购买的弹性公网IP只是裸实例,后端资源具备公网能力,即创建CVM实例、NAT网关实例、VPN网关实例时指定这些实例有多少公网能力(带宽上限),用什么计费方式(按流量计费、按带宽计费),公网IP和CLB只作为公网出口,后文统一称为“裸IP”。

第二类账户

在公网IP和CLB上管理公网能力,后端资源只是裸实例。创建公网IP时指定该IP有多少公网能力(带宽上限),用什么计费方式(按流量计费、按带宽计费)。后端的实例(CVM、NAT网关、VPN网关)使用IP上的公网能力。这类IP有三种类型:小时带宽EIP、包月带宽EIP、按流量计费EIP

由于第二类账户类型正在内测阶段,绝大部分用户属于第一种类型。

 

 

 

腾讯云弹性公网 IP:https://cloud.tencent.com/document/product/213/5733   (每个账户每天10次)

腾讯云弹性IP 开发:https://cloud.tencent.com/document/product/213/11659

 

阿里云弹性公网 IP:https://help.aliyun.com/document_detail/54479.html

阿里云弹性IP 开发:https://help.aliyun.com/document_detail/36018.html

 

百度云弹性公网 IP:https://cloud.baidu.com/doc/EIP/FAQs.html

百度云弹性IP 开发:https://cloud.baidu.com/doc/EIP/API.html

 

华为云弹性公网 IP:

AWS云弹性公网 IP:

 

 

腾讯云弹性公网 IP开发

弹性公网 IP:https://cloud.tencent.com/document/product/213/5733   (每个账户每天10次)

弹性IP接口:https://cloud.tencent.com/document/product/213/11659

公共参数:https://cloud.tencent.com/document/api/213/11650

签名方法:https://cloud.tencent.com/document/api/377/4214

 

使用规则:

  • 弹性 IP 地址同时适用于基础网络和私有网络的实例,以及私有网络中的 NAT 网关 实例。
  • 弹性 IP 地址与腾讯云账户相关联,而不是与某个具体实例相关联。
  • 选择、释放弹性 IP 地址,或欠费超过 26 小时之前,弹性 IP 地址会一直与腾讯云账户保持关联。
  • 将弹性 IP 地址与实例绑定时,实例的当前公网 IP 地址会释放到基础网络公网 IP 地址池中。如果将弹性 IP 地址与实例解绑时选择了重新分配公网 IP ,实例会很快自动分配到新的公网 IP 地址(无法保证与绑定前的公网 IP 一致)。此外,销毁实例也会断开与弹性 IP 地址的关联。

使用限制:

  • 每个腾讯云账户每个地域每天申购次数为 配额数*2 次。
  • 每个腾讯云账户每个地域下最多可创建 20 弹性公网 IP。
  • 解绑EIP时,可免费重新分配公网 IP 的次数为每个腾讯云账户每天 10 
  • 个弹性公网 IP 同一时间只能绑定到 1 个 CVM/NAT 网关实例上,支持动态的绑定和解绑。

 

1. 查询弹性公网IP列表

// 腾讯云API
function sign_qcloud() {
	global $QCloud_SecretId;
	global $QCloud_SecretKey;
	
	$req_method = 'GET';		// GET  POST
	$req_api = 'eip.api.qcloud.com/v2/index.php';
	$req_action = 'DescribeAddresses';
	$req_version = '2017-03-12';
	$req_addressid = 'eip-qpib07e1';
	$req_region = 'ap-beijing';					// ap-guangzhou
	$req_timestamp = strtotime(date('YmdHis'));	// 1402992826
	$req_nonce = rand(1000, 1000000);			// 随机正整数
	$req_secretid = $QCloud_SecretId;			// 密钥ID,用作参数
	$req_secretkey = $QCloud_SecretKey;			// 密钥key,用作加密
	$req_signature_method = 'HmacSHA256';		// HmacSHA1(默认), HmacSHA256
	$req_signature = '';
	
// 	$req_uri = "https://eip.api.qcloud.com/v2/index.php?Action=DescribeAddresses
// 	&Version=2017-03-12
// 	&AddressIds.1=eip-hxlqja90
// 	&Region=ap-beijing
// 	&Timestamp=1402992826
// 	&Nonce=345122
// 	&Signature=pStJagaKsV2QdkJnBQWYBDByZ9YPBsOi
// 	&SecretId=AKIDpY8cxBD2GLGK9sT0LaqIczGLFxTsoDF6
	
	// 请求方法 + 请求主机 +请求路径 + ? + 请求字符串
	$req_params = sprintf("Action=%s&Version=%s&AddressIds.1=%s&Region=%s&Timestamp=%s&Nonce=%s&SecretId=%s&SignatureMethod=%s", $req_action,
			$req_version,
			$req_addressid,
			$req_region,
			$req_timestamp,
			$req_nonce,
			$req_secretid,
			$req_signature_method);
	
	$req_params_array = explode("&", $req_params);
	sort($req_params_array);		// 以value排序,value值为 Action=DescribeAddresses 、 Region=ap-beijing
	$req_params2 = implode("&", $req_params_array);
	
	$req_uri = sprintf("%s%s?%s", $req_method, $req_api, $req_params2);
	$req_signature = base64_encode(hash_hmac('sha256', $req_uri, $req_secretkey, true));
	$req_url = sprintf("https://%s?%s&Signature=%s", $req_api, $req_params2, $req_signature);
	
	return $req_url;
}

运行结果:

{
  "Response": {
    "TotalCount": 1,
    "AddressSet": [
      {
        "AddressId": "eip-qpib07e1",
        "AddressName": null,
        "AddressIp": "12.206.82.23",
        "AddressStatus": "BIND",
        "InstanceId": "ins-mtbhiudp",
        "NetworkInterfaceId": "eni-q0cfq71o",
        "PrivateAddressIp": "172.21.10.18",
        "IsArrears": false,
        "IsBlocked": false,
        "IsEipDirectConnection": false,
        "CreatedTime": "2018-02-06T02:44:13Z"
      }
    ],
    "RequestId": "c1618489-154e-450d-8fdb-75b911908bf6"
  }
}

 

 

 

 

 

 

阿里云弹性公网 IP开发

弹性IP和公网IP 区别

下表描述了弹性公网IP与ECS公网IP的区别。

比较点 弹性公网IP ECS公网IP
支持的网络环境 专有网络 专有网络和经典网络
是否能够单独持有 支持 不支持
是否支持在ECS上的弹性插拔 支持 不支持
ECS实例网卡上是否能看到该IP 不能 经典网络:能看到
专有网络VPC:看不到

 

使用限制

  • 每个账号最多可申请 20个EIP,如果您需要更多的EIP,请提交工单申请。

  • 目前EIP只支持绑定NAT网关、专有网络类型的负载均衡实例和专有网络类型的ECS实例。

  • 只有可用状态的EIP才能够进行绑定操作。

  • EIP绑定成功后立刻生效,不需要重启云服务器实例。

  • EIP和待绑定的资源的地域必须相同。

  • 每个ECS实例和负载均衡实例只能同时绑定一个EIP。

  • 每个NAT网关可以同时绑定多个EIP。

  • 一个EIP同一时间只能绑定在一个资源上。

  • 只有处于运行中和已停止状态的ECS实例可以绑定EIP。

  • 因安全原因被锁定的EIP无法进行绑定和解绑操作。

 

 

 

 

百度云弹性公网 IP开发

用户可购买的EIP实例数 <= 当前已存在的BCC实例数 + 当前已存在的BLB实例数 + 2

 

共享带宽和EIP有什么区别?

  • 一份共享带宽,由一个公网带宽和一组公网IP组成,已经购买的EIP实例不支持加入共享带宽。
  • EIP是一个IP上配置一份带宽。

 

 

 

 

 

华为云弹性公网 IP开发

 

 

 

 

 

 

AWS云弹性公网 IP开发