这就是我想要做的事情
打开浏览器并开始浏览任何https网站,例如gmail或google.com
我可以通过wireshark看到dns服务器正在完成名称解析。
但之后,连接直接建立到端口443(从tcp握手开始)
我无法理解的一件事是,浏览器如何知道它需要连接到端口443,我尝试探索dns数据包,但它只包含目标地址,并且没有信息这告诉它需要连接到端口443。
即使说,浏览器首次查询优先级,它会看到如果端口443打开然后连接到它或连接到端口80,但是我无法看到任何这样的行为,如果我连接到一个普通的http网站,在某种意义上说,如果我去一个普通的http网站,没有来自浏览器的流量,表明它先搜索了端口443,然后转到80端口。
我确信我在这里遗漏了一些东西,但不确定它是什么。
答案 0 :(得分:0)
网址中https:
的存在告诉它。
答案 1 :(得分:0)
浏览器(客户端)使用地址中的HTTP或HTTPS确定要使用的端口... 但是,可以将服务器配置为需要HTTPS,并使用加密和证书将HTTP端口80连接切换/重定向到HTTPS端口443。因此,如果浏览器通过HTTP端口80连接到服务器,则服务器可以立即将连接切换/重定向到HTTPS端口443。甚至可以以其他方式配置服务器,以将连接从HTTPS端口443切换/重定向到HTTP。端口80。