动态切换ipv6地址
如果经常采集数据,您会发现您的ip地址总是被封,这个时候就需要切换ip地址才能采集。那么怎么才能够免费切换ip地址了?
断网重启当然可以切换IP地址,但是比较费时间,简单的办法就是禁用ipv6然后启用ipv6就可以达到切换ipv6地址。
使用管理员的身份运行Windows PowerShell以下命令。
查看ipv6使用情况
Get-NetAdapterBinding -ComponentID ms_tcpip6
运行后可以看到
Name DisplayName ComponentID Enabled
---- ----------- ----------- -------
vEthernet (VMware Net...2 Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
WLAN Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
VMware Network Adapte...8 Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
vEthernet (VMware Network ) Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
VMware Network Adapte...1 Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
以太网 Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
vEthernet (以太网) Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
vEthernet (WLAN) Internet 协议版本 6 (TCP/IPv6) ms_tcpip6 True
禁用 WLAN 设备的本地 IPv6 网络
Disable-NetAdapterBinding -Name "WLAN" -ComponentID ms_tcpip6
启用 WLAN 设备的本地 IPv6 网络
Enable-NetAdapterBinding -Name "WLAN" -ComponentID ms_tcpip6
自己查看自己的ipv6地址是否改变了,如果改变了,我们就可以使用PHP执行以上命令来切换ipv6地址。
system('powershell -command "Disable-NetAdapterBinding -Name \"WLAN\" -ComponentID ms_tcpip6"');
system('powershell -command "Enable-NetAdapterBinding -Name \"WLAN\" -ComponentID ms_tcpip6"');
注意事项:上面代码需要以管理员的身份运行cmd,在cmd下执行php代码。