DNS:通过修改域名解析服务器,将被污染的域名解析为正确的IP地址1。
在科学上网时,用户通过代理服务器转发流量来绕过限制,而不是直接发送到原始服务器。
SOCKS Proxy:通过设置一个SOCKS协议的代理服务器,将用户的网络流量转发到目标网站,并将响应数据返回给用户1。
- V2ray和clash可以用于科学上网,但它们不是传统意义上的VPN。传统的VPN是通过在公共网络上建立安全的加密隧道来保护用户的隐私和安全。
- V2ray和clash使用的是Socks5代理协议,将流量通过代理服务器转发,从而实现科学上网。与传统VPN相比,V2ray和clash的优点在于速度更快、稳定性更好,缺点在于需要用户自行购买或搭建服务器,使用门槛较高。
一个http请求发生了什么?
- dns解析,得到IP
- 向目标IP发起TCP请求
- 发送http request
- 服务器回应,浏览器解析
DNS/域名解析
dns有两种协议,一种是UDP(默认),一种是TCP。
UDP是默认协议。在UDP方式下,DNS服务器将响应数据打包为数据包并通过UDP协议发送回客户端。由于UDP是无连接的协议,因此数据包可能会在传输过程中丢失或损坏。
在TCP方式下,DNS服务器将响应数据打包为TCP数据流并通过TCP协议发送回客户端。相对于UDP,TCP是可靠的协议,但它在传输时需要建立连接,因此会导致额外的开销。因此,DNS通常使用UDP协议,除非响应数据过大而无法在一个数据包中发送,这时会使用TCP协议。
UDP 方式下,先到达的数据包会被当做有效数据;而在 TCP 方式下,有时有效,但也可能被 REST。
TCP三次握手是TCP协议中用于在客户端和服务器之间建立可靠连接的过程。它包括以下步骤:
- 客户端发送一个SYN数据包到服务器,请求建立连接。
- 服务器接收到SYN数据包并发送一个ACK数据包作为响应,表示已收到请求。
- 客户端接收到ACK数据包后,向服务器发送一个ACK数据包作为确认,表示连接已建立。
这个过程的目的是确保客户端和服务器之间建立了可靠的连接,并且每个数据包都能够正确地传输。