定义
PIP是可以直接将其分配给VM的IP地址,而不是VM所在的云服务。
也叫ILPIP=Instance Level Public IP
限制
(1)每个实例可以分配一个PIP。最多可为每个订阅使用 5 个 PIP
(2)Dynamic IP: 当虚拟机关闭或者取消分配时候,PIP会释放
应用
被动 FTP:动态选择端口。 PIP带来VM端口全部暴露在公网,你将不必打开终结点来接收流量。
出站 IP :PIP 作为VM 的出站流量源,它向外部实体唯一标识了VM。
一张图可以看出PIP和VIP的区别:VIP针对云服务的,PIP是针对云服务下VM的。
Azure Powershell可以快速获取PIP,脚本已经做好,修改变量即可轻松搞定PIP。
创建Windows/Linux虚拟机时候,可以直接创建带有PIP的虚拟机
Set PIP when Creating Windows VM
$vmname='InstancePIP2012' #虚拟机名字
$InstanceSize="Small" #虚拟机大小
$img='0c5c79005aae478e8883bf950a861ce0__Windows-Server-2012-Essentials-20131018-enus' #虚拟机镜像版本
$adminuser='win' #RDP虚拟机的管理员名字
$Password='qwer1234!' #登录虚拟机的管理员密码
$PublicIPName="WinInstancePIP2012" #实力级别IP的名字
$cloudname='newvmpip2012' #云服务名字
$CloudLocation='China North‘ #云服务的地理位置
New-AzureVMConfig -Name $vmname -InstanceSize $InstanceSize -ImageName $img | Add-AzureProvisioningConfig -Windows -AdminUsername $adminuser -Password $Password | Set-AzurePublicIP -PublicIPName $PublicIPName | New-AzureVM -ServiceName $cloudname -Location $CloudLocation
Set PIP when Creating Linux VM
$vmname='InstancePIP' #虚拟机名字
$InstanceSize="Small" #虚拟机大小
$img='f1179221e23b4dbb89e39d70e5bc9e72__OpenLogic-CentOS-65-20150325' #虚拟机镜像版本
$adminuser='win' #SSH虚拟机的普通用户的名字
$Password='qwer1234!' #SSH虚拟机的普通用户的密码
$PublicIPName="WinInstancePIP" #实力级别IP的名字
$cloudname='newvmpip' #云服务名字
$CloudLocation='China North' #云服务的地理位置
New-AzureVMConfig -Name $vmname -InstanceSize $InstanceSize -ImageName $img | Add-AzureProvisioningConfig -Linux -LinuxUser $adminuser -Password $Password | Set-AzurePublicIP -PublicIPName $PublicIPName | New-AzureVM -ServiceName $cloudname -Location $CloudLocation
对于运行中的虚拟机也可以开通PIP功能
Set PIP for Running VM
Get-AzureVM -ServiceName newvmpip2012 -Name InstancePIP2012 | Set-AzurePublicIP -PublicIPName PIPforrunningvm | Update-AzureVM
PIP是收费的,不需要时候可以移除
Remove PIP
Get-AzureVM -ServiceName newvmpip2012 -Name InstancePIP2012 | Remove-AzurePublicIP | Update-AzureVM
数据中心禁ICMP协议,ping是禁用的,但是PIP可以ping,这可能为某些用户带来不少可以应用的场景。