我有两台计算机,都安装了几乎完全相同的 Slackware。我使用 Waterfox 56 作为浏览器,并尝试在本地网络服务器上访问我的网站。本地网络服务器使用来自我自己的 CA 的 TLS 证书,该证书已正确导入到两个浏览器中。
我的一台计算机无法正确加载本地网站并挂在“执行 TLS 握手”处。我尝试清除缓存并重新启动,但没有任何效果。
我刚刚尝试使用另一个浏览器(lynx)并得到了类似的结果。
我的浏览器在 TLS 握手时挂起的原因可能是什么?
我有消息:重新启动我的笔记本电脑后,它无法再加载网站,就像我的其他计算机一样。但我可能发现了一些东西:当我尝试使用 openssl 连接时,如下所示:
openssl s_client -connect <server_ip>:443
我明白了CONNECTED(00000003)
,然后什么也没有......
另外,服务器上的 ssh 会话有时会冻结,所以也许这毕竟是服务器的问题。
答案1
原因很难找到。 DHCP 客户端守护程序未应用从 DHCP 服务器接收的 MTU 设置(在我的专用网络上,我已将 MTU 设置为 9000)。
有一个禁用选项/etc/dhcpcd.conf
:
option interface_mtu
我启用了它并且它起作用了。
现在我明白为什么只有本地网站无法加载,因为服务器响应的帧太大,而来自路由器的帧从未超过1500B,因为它们来自我的ISP网络。