判断协议是否出网
-
内网中碰到不出网的主机,常见的原因有:
没有设置网关、系统防火墙或者其他设备设置了出站限制,只允许特定协议或端口出网。
1、主机未设置网关,站库分离环境最常见的就是数据库不出网
C:\Users\Administrator>ping baidu.com
Ping 请求找不到主机 baidu.com。请检查该名称,然后重试。
2、防火墙出站规则禁Ping提示
只是设置了出站规则禁PING,并不是完全不能出网。
禁止出网:新建规则->端口->TCP/所有远程端口->阻止连接。C:\Windows\System32>ping baidu.com 正在 Ping baidu.com [39.156.69.79] 具有 32 字节的数据: 一般故障。 一般故障。 一般故障。 一般故障。
3、设备、防火墙或者云主机安全组限制出入口流量Ping提示:
C:\Users\Administrator>ping baidu.com 正在 Ping baidu.com [39.156.69.79] 具有 32 字节的数据: 请求超时。 请求超时。 请求超时。 请求超时。
-
DNS协议检测:常用命令为nslookup和dig
1、Windows操作系统自带的DNS探测命令:nslookupnslookup www.baidu.com vps-ip #nslookup domain [dns-server] 如果没有指定dns服务器,就采用系统默认的dns服务器。
2、Linux默认自带DNS探测命令:dig
dig @vps-ip www.baidu.com
-
服务器检测是否出网
Ping命令:服务器可以使用Ping命令向目标IP地址发送一个数据包,并等待接收来自该地址的回复。如果服务器收到回复,说明有网络连接;如果没有收到回复,说明没有网络连接。HTTP请求:服务器可以通过发送HTTP请求到一个可靠的外部网站来检查网络连接。如果服务器能够成功建立HTTP连接并收到响应,说明有网络连接;如果没有收到响应或者连接超时,说明没有网络连接。
DNS查询:服务器可以尝试通过向DNS服务器发送域名解析请求来检查网络连接。如果服务器能够成功解析域名并获取到IP地址,说明有网络连接;如果无法解析域名或者解析超时,说明没有网络连接。
网络接口状态:服务器可以通过检查网络接口的状态来判断是否有网络连接。如果网络接口处于活动状态并且分配了有效的IP地址,说明有网络连接;如果网络接口处于非活动状态或者未分配IP地址,说明没有网络连接。
连接外部服务器:服务器可以尝试连接一个可靠的外部服务器,如Google或百度。如果服务器能够成功建立连接并进行数据传输,说明有网络连接;如果连接被拒绝或者连接超时,说明没有网络连接。