这里记录一些网络开发时的知识点
为什么不建议使用0.0.0.0这个IP地址?
在云主机上,不建议绑定 0.0.0.0 这个IP地址。其原因是,0.0.0.0 表示所有可用的IP地址,如果服务绑定在0.0.0.0上,将允许来自任何网络接口的所有请求都能够到达该服务,从而可能导致安全风险。例如,如果你的云主机同时有内网IP和外网IP,你可能只希望服务只监听外网IP地址,这样可以避免来自内网的非授权访问。
因此,在云主机上,建议将服务绑定到具体的IP地址上,以增加网络安全性。
在云主机上有内网和外网地址,我们该用哪个?
如果在云主机有一个公网 IP 和一个内网 IP,而您的网络服务需要对外提供服务,则应该使用公网 IP 地址和端口号。这样,外部用户可以通过 Internet 连接到您的服务。
如果您的服务只在内部网络中使用,那么可以使用内网 IP 地址和端口号。这样,只有内部网络中的用户才能连接到您的服务。
需要注意的是,在使用公网 IP 地址时,还需要在防火墙中打开相应的端口,以便外部用户可以连接到您的服务。而在使用内网 IP 地址时,通常不需要打开防火墙,因为内部网络是相对安全的,只有经过授权的用户才能连接到您的服务。
客户端无法联网,如何判断是无法与路由器连接还是无法与与互联网连接?
可以通过向默认网关发ping消息来判断是否主机能与路由器联接。如果客户端可以收到路由器的返馈包,说明两者联接是好的。否则说明无法与路由器连接。
之后可以向一台云主机发包,如果云主机可以往回数据说明网络联接是好的,否则说明路由器无法联网。
如何判断客户端主机IP是否被劫持了?
可以向多台云主机发送数据包,让云主机获取到的客户端主机IP地址返回,如果一致说明没有被劫持,否则说明某条线路的IP地址被劫持了。
VPN突然连不上了问题分析
前两天VPN还好好的,结果这两天就突然不能使了,这是啥原因呢?下面记录一下我分析这个问题的过程。
首先登陆到云主机上,看端口是否已经开启了。需要注意的是确认端口是TCP还是UDP。默认VPN端口都是UDP端口1194。
对于TCP端口可以使用telnet验证是否处于服务端态,而对于UDP端口则可以使用 nmap 或 nc 来验证。
1
sudo nmap -sU -p 1194 xxx.xxx.xxx.xxx
上述命令中 -sU 指明扫描UDP协议,**-p** 指明要扫描的端口。或者使用 nc 命令,其具体格式如下:
1
nc -vuz xxx.xxx.xxx.xxx 1194
其中 -v 表示输出详细信息;**-u** 表示扫描UDP端口;**-z** 表示zero I/O。
如果服务的端口是OK的,接下来要到云主机上抓包,看一下进/出包是否正常。可以使用以下面的命令来抓包:
1
tcpdump -i eth0 udp port 1194
如果进/出包也正常,则需要再客户端抓包,可以使用wireshark抓包。
我这次的问题就是通过分析客户端的抓包情况才找到真正原因的。
云主机进/出包正常,而客户端只有出包没有入包,说明包从云主机出来后,被拦截了。