NAT
所有文档

          私有网络 VPC

          NAT

          获取Endpoint

          在确认您使用SDK配置Endpoint时,可先阅读开发人员指南中关于 VPC服务域名的部分,理解Endpoint相关的概念。 百度智能云目前开放了多区域支持,请参考区域选择说明中网络产品VPC的部分,NAT服务是VPC服务的一部分,使用VPC服务域名。

          获取密钥

          要使用百度云产品,您需要拥有一个百度云账号和一个有效的 AK(Access Key ID)、SK(Secret Access Key)用来进行签名认证。可以通过如下步骤获得并了解您的AK/SK信息: 1. 注册百度云账号 2. 创建AK/SK

          nat_client

          natclient是NAT服务的Python客户端,nat_client将NAT服务的API进行封装,简化了开发者与NAT服务的交互,用户可调用nat_client中的方法对NAT网关进行配置,nat_client中方法返回参数与[API方法](https://console.bce.baidu.com/iam/?=1513940574695#/iam/accesslist)一致。

          新建nat_client

          新建nat_client时,需要先使用Endpoint、AK、SK对BceClientConfiguration类型config实例进行配置,再使用config实例对nat_client进行配置,具体配置方法如下:

          HOST = b''
           AK = b''
           SK = b''
           config = BceClientConfiguration(
               credentials=BceCredentials(AK, SK), endpoint=HOST)
           self.client = nat_client.NatClient(config)

          创建NAT网关

          可以使用create_nat函数在制定VPC内创建网关,函数定义如下:

          @required(name=(bytes, str),
                     vpc_id=(bytes, str),
                     spec=(bytes, str))
          def create_nat(self, name, vpc_id, spec, billing=None, eips=None,
                         client_token=None, config=None)

          参数说明如下:

          参数名称 类型 是否必需 描述
          name bytes或str NAT网关的名称,由大小写字母、数字以及-_ /.特殊字符组成,必须以字母开头,长度1-65
          vpc_id bytes或str NAT网关所属VPC的ID
          spec bytes或str NAT网关的大小,有small(最多支持绑定5个公网IP)、medium(最多支持绑定10个公网IP)、large(最多支持绑定15个公网IP)三种
          billing 自定义Billing类型 计费方式,默认为后付费,支持按月预付费购买,详见计费说明
          eips List NAT网关绑定的EIP
          client_token bytes或str 幂等性Token,是一个长度不超过64位的ASCII字符串,详见幂等性Token
          config BceClientConfiguration 默认为初始化nat_client时的config

          其中自定义Billing类型定义见nat_model.py

          查询NAT网关列表

          可以使用list_nats函数查询NAT网关列表,若指定查询条件,则按查询条件进行筛选,若不提供查询条件,则默认查询所有NAT网关,函数定义如下:

          @required(vpc_id=(bytes, str))
          def list_nats(self, vpc_id, nat_id=None, name=None,
                        ip=None, marker=None, max_keys=None, config=None)

          参数说明如下: | 参数名称 |类型 |是否必需 |描述 | | --- | --- | --- | --- | | vpc_id | bytes或str |是 |NAT网关所属VPC的ID | | nat_id | bytes或str | 否 |NAT网关的ID| | name | bytes或str | 否 |NAT网关的名称| |ip | bytes或str | 否 |网关绑定的IP地址 | |marker | bytes或str | 否 |批量获取列表的查询的起始位置 | |maxKeys | int | 否 |每页包含的最大数量,最大数量不超过1000。缺省值为1000| |config | BceClientConfiguration | 否 |默认为初始化nat_client时的config |

          查询NAT网关详情

          可以使用get_nat函数查询NAT详情,函数定义如下:

           @required(nat_id=(bytes, str))
              def get_nat(self, nat_id, config=None)

          参数说明如下: | 参数名称 |类型 |是否必需 |描述 | | --- | --- | --- | --- | | nat_id | bytes或str | 是 |NAT网关的ID| |config | BceClientConfiguration | 否 |默认为初始化nat_client时的config |

          更新NAT网关名称

          可以使用update_nat函数更新NAT网关名称,函数定义如下:

          @required(nat_id=(bytes, str), name=(bytes, str))
              def update_nat(self, nat_id, name, client_token=None, config=None)

          参数说明如下: | 参数名称 |类型 |是否必需 |描述 | | --- | --- | --- | --- | | nat_id | bytes或str | 是 |NAT网关的ID | |name | bytes或str | 是 |NAT网关的新名称 | |client_token | bytes或str | 否 |幂等性Token,是一个长度不超过64位的ASCII字符串,详见幂等性Token | |config | BceClientConfiguration | 否 |默认为初始化nat_client时的config |

          绑定EIP

          可以使用bind_eip函数为NAT网关绑定EIP,函数定义如下:

          @required(nat_id=(bytes, str), eips=list)
              def bind_eip(self, nat_id, eips, client_token=None, config=None)

          参数说明如下: | 参数名称 |类型 |是否必需 |描述 | | --- | --- | --- | --- | | nat_id | bytes或str | 是 |NAT网关的ID | |eips | List | 是 |NAT网关需要绑定的EIP | |client_token | bytes或str | 否 |幂等性Token,是一个长度不超过64位的ASCII字符串,详见幂等性Token | |config | BceClientConfiguration | 否 |默认为初始化nat_client时的config |

          解绑EIP

          可以使用unbind_eip函数为NAT网关解绑EIP,函数定义如下:

          @required(nat_id=(bytes, str), eips=list)
              def unbind_eip(self, nat_id, eips, client_token=None, config=None)

          参数说明如下: | 参数名称 |类型 |是否必需 |描述 | | --- | --- | --- | --- | | nat_id | bytes或str | 是 |NAT网关的ID | |eips | List | 是 |NAT网关需要解绑的EIP | |client_token | bytes或str | 否 |幂等性Token,是一个长度不超过64位的ASCII字符串,详见幂等性Token | |config | BceClientConfiguration | 否 |默认为初始化nat_client时的config |

          释放NAT网关

          可以使用delete_nat函数释放NAT网关,函数定义如下:

          @required(nat_id=(bytes, str))
              def delete_nat(self, nat_id, client_token=None, config=None)

          参数说明如下: | 参数名称 |类型 |是否必需 |描述 | | --- | --- | --- | --- | | nat_id | bytes或str | 是 |NAT网关的ID | |client_token | bytes或str | 否 |幂等性Token,是一个长度不超过64位的ASCII字符串,详见幂等性Token | |config | BceClientConfiguration | 否 |默认为初始化nat_client时的config |

          NAT网关续费

          可以使用purchase_reserved_nat函数对NAT网关进行续费操作,仅预付费类型支持续费操作,函数定义如下:

          @required(nat_id=(bytes, str))
              def purchase_reserved_nat(self, nat_id, billing, client_token=None,
                                        config=None)

          参数说明如下: | 参数名称 |类型 |是否必需 |描述 | | --- | --- | --- | --- | | nat_id | bytes或str | 是 |NAT网关的ID | |billing | 自定义Billing类型 | 否 |计费方式,不填则默认续费1个月,详见计费说明 | |client_token | bytes或str | 否 |幂等性Token,是一个长度不超过64位的ASCII字符串,详见幂等性Token | |config | BceClientConfiguration | 否 |默认为初始化nat_client时的config |

          上一篇
          路由
          下一篇
          对等连接