微软的Azure平台已经支持Instance Level Public IP功能。当有复杂协议的情况下,需要开启多个端口的情况下,可以考虑开启PIP功能。

先介绍几个概念:

  • VIP – virtual IP address 虚拟机的公网IP
  • DIP – dynamic IP address 虚拟机的内网IP
  • PIP – instance-level public IP address 虚拟机及的公网IP

对于创建的VM,都会被分配一个内网的DIP地址,同时多个VM会共享一个Cloud Service。每个Cloud Service会有一个VIP公网IP地址。

 

如果需要端口全开的地址,可以给虚拟机添加PIP地址。这个地址与原有的VIP地址不同,并且通过VIP和PIP都可以访问到这台VM。只是VIP需要做Endpoint的设置,而PIP不需要。

 

具体配置方法:

配置PIP非常简单,只需要一条Powershell命令:

get-azurevm -ServiceName hwpip -Name hwpip | set-AzurePublicIP -PublicIPName hwpipip1 | Update-AzureVM

检查命令:

get-azurevm -ServiceName hwpip -Name hwpip | Get-AzurePublicIP -PublicIPName hwpipip1

这条命令基本看不到任何想看的信息。可以用下面的命令进行观察:

Get-AzureRole -ServiceName hwpip -Slot Production -InstanceDetails

InstanceEndpoints         : {SSH}

InstanceErrorCode         :

InstanceFaultDomain     : 0

InstanceName         : hwpip

InstanceSize         : Standard_D1

InstanceStateDetails         :

InstanceStatus         : ReadyRole

InstanceUpgradeDomain     : 0

RoleName         : hwpip

DeploymentID         : 29da144bef1f432384a15635ada2ce61

IPAddress         : 10.1.1.4

PublicIPAddress         : 42.159.29.19

PublicIPName         : hwpipip1

PublicIPIdleTimeoutInMinutes     :

PublicIPDomainNameLabel     :

PublicIPFqdns         : {}

ServiceName         : hwpip

OperationDescription     : Get-AzureRole

OperationId         : 701a4bf1-1e38-4630-9565-ffd803c2c73a

OperationStatus          : Succeeded

这里可以看到比较详细的信息,其中PublicIPAddress: 42.159.29.19就是公网IP。

 

另外通过命令可以看到虚拟机VIP信息:

$vip = Get-AzureDeployment -ServiceName hwpip

$vip.VirtualIPs

Address         : 42.159.26.212

IsDnsProgrammed     : True

Name         : hwpipContractContract

ReservedIPName     :

ExtensionData     :

这里可以看到VIP地址:42.159.26.212,通过配置endpoint,可以通过这个地址访问到我们开放的Service。

比如当你启用了FTP或HTTP的服务,以及默认启用的SSH服务,可以通过PIP的公网IP访问到,也可以通过VIP访问,但必须要添加endpoint。

 

但如果设置了PIP,必须要添加相应的iptables的规则,否则非常容易被黑掉!

Azure PIP (Instance Level Public IP)的更多相关文章

  1. Windows Azure Virtual Machine (28) 使用Azure实例级别IP,Instance-Level Public IP Address (PIP)

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China 熟悉Azure平台的读者都知道,我们在使用Azure Virtual ...

  2. Azure PowerShell (9) 使用PowerShell导出订阅下所有的Azure VM的Public IP和Private IP

    <Windows Azure Platform 系列文章目录> 笔者在之前的工作中,有客户提出想一次性查看Azure订阅下的所有Azure VM的Public IP和Private IP. ...

  3. Azure VM Public IP设置

    Azure虚拟机的Public IP是用于客户端直连云中的虚拟机,可以认为是一个外网IP,一般我们为虚拟机设置终结点,例如HTTP的80端口,如果使用Public IP可以不使用Azure Porta ...

  4. Azure Public IP DNS域名

    在某些环境下,PIP是Azure上的一种比较好的解决方案处理一些特殊的环境.比如大量的端口需要打开.向外部的访问非常多等等. 但目前,Azure的Reserved IP address不用应用到PIP ...

  5. Getting Private/Public IP address of EC2 instance using AWS-cli [closed]

    For private IP address: aws ec2 describe-instances --instance-ids i-b78a096f | grep PrivateIpAddress ...

  6. Oracle 11gR2 RAC网络配置,更改public ip、vip和scanip

    Oracle 11gR2 RAC网络配置,更改public ip.vip和scanip 转载黑裤子 发布于2018-10-30 01:08:02 阅读数 2898  收藏 展开 转载. https:/ ...

  7. Windows Azure Virtual Network (5) 设置Azure Virtual Machine固定Private IP

    <Windows Azure Platform 系列文章目录> 注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪 ...

  8. Windows Azure Virtual Network (6) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (1)

    <Windows Azure Platform 系列文章目录> 注意:本文介绍的是Global Azure (http://www.windowsazure.com),如果你使用的是由世纪 ...

  9. Windows Azure Virtual Network (7) 设置Azure Virtual Machine固定公网IP (Virtual IP Address, VIP) (2)

    <Windows Azure Platform 系列文章目录> 本文介绍的是,当用户在创建Azure Virtual Machine的时候,忘记绑定公网IP,需要重新绑定公网IP的具体操作 ...

随机推荐

  1. "ORA-01012: not logged on"以及"Connected to an idle instance."解决思路

    今天测试用的ORACLE服务器出现卡顿情况,于是准备重启一下,在运行shutdown指令关闭数据库的时候意外断开连接,后面想再次进入ORACLE服务器启动时便遇见如下报错: 使用sqlplus /no ...

  2. java中枚举类型的使用

    Java 枚举(enum) 详解7种常见的用法 JDK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便. web项目里实体类使用枚举类型: 一般在该实体 ...

  3. 洛谷 1641 [SCOI2010]生成字符串

    题目戳这里 一句话题意 求\(C_{m+n}^{m}\)-\(C_{m+n}^{m-1}\) Solution 巨说这个题目很水 标签居然还有字符串? 但是我还不很会用逆元真的太菜了,还好此题模数P为 ...

  4. Android系统移植与调试之------->如何修改Android自带的apk出现一圈圈类似鸡蛋的花纹

    最近被一个问题烦恼到了,就是android4.1系统自带的Email.文件管理器.信息等apk都出现同一个问题,就是现实在平板上的时候会出现一圈圈类似鸡蛋的花纹. 我想了两种方法来解决,第一种方法没有 ...

  5. PostgreSQL 里面的 BIGSERIAL

    @Id@GeneratedValue(strategy = GenerationType.IDENTITY)private Long id; CREATE TABLE article( id BIGS ...

  6. android 多语言(在APP里面内切换语言)

    创建SharedPreferences的管理类 public class PreferenceUtil { private static SharedPreferences mSharedPrefer ...

  7. 如何判断移动终端访问还是PC访问?

    我们经常需要知道访问网站的设备是移动终端还是PAD还是PC,下面给出判断的java代码供参考.实现的原理就是获取HTTP消息头里User-Agent和x-wap-profile,User-下面是Use ...

  8. 通过systemd配置Docker

    1. systemd Service相关目录 通常情况下,我们有3种方式可以配置etcd中的service.以docker为例,1)在目录/etc/systemd/system/docker.serv ...

  9. Java中byte转换int时与0xff进行与运算的原因

    http://w.baike.com/LGAdcWgJBBQxRAHUf.html 转帖 java中byte转换int时为何与0xff进行与运算 在剖析该问题前请看如下代码 public static ...

  10. bigdecimal类型除法问题

    坑:bigdecimal类型做除法运算时,结果为整数或有限小数时候不存在问题,若结果无法整除,为无限小数时报错 错误代码: Bigdecimal  b = a.divide(c).setScale(5 ...