搞了 caddy 后 httpd 只能绑定到 ipv6 怎么回事?

2022-12-08 21:58:08 +08:00
 zzzkkk

今天在搞 caddy 按照下面操作的

https://github.com/klzgrad/naiveproxy/wiki/%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87

最后启动 caddy 发现 只能绑定到 ipv6 的 443 端口 导致 naiveproxy 客户端无法访问到

后来把 caddy 停了 重新启动 httpd 发现 httpd 也只能绑定到 ipv6 的 443 端口了 netstat 输出没有 ipv4

[root@racknerd-a39015 ~]# netstat -tlnp|grep 443

tcp6 0 0 :::443 :::* LISTEN 6558/httpd

2691 次点击
所在节点    Linux
12 条回复
ThirdFlame
2022-12-08 22:14:05 +08:00
实际上为同时监听了 v4 和 v6 就会这样显示。
你可以试试 curl 127.0.0.1:443 是通的
zzzkkk
2022-12-08 22:36:32 +08:00
还有个服务监听 8888 是这样的 反正 443 端口现在从外面连不上了


[root@racknerd-a39015 ~]# netstat -tlnp|grep 8888



tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN 1254/stunnel
zzzkkk
2022-12-08 22:50:35 +08:00
ssh 端口是这样的 刚才 vps 重启后都没用

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 876/sshd


tcp6 0 0 :::22 :::* LISTEN 876/sshd
tinkerer
2022-12-08 23:16:22 +08:00
https://github.com/nodejs/node/issues/9390

不然你看一下 `cat /proc/sys/net/ipv6/bindv6only` 的输出?
zzzkkk
2022-12-08 23:22:00 +08:00
@tinkerer
该文件内容为 0
tinkerer
2022-12-08 23:34:50 +08:00
@zzzkkk 那应该表示 [::]:443 可以等效于同时监听了 0.0.0.0:443, 如果你确实不需要 ipv6 或者想排查问题,可以先禁用 ipv6 看看

sysctl -w net.ipv6.conf.all.disable_ipv6=1
sysctl -w net.ipv6.conf.default.disable_ipv6=1
sysctl -w net.ipv6.conf.lo.disable_ipv6=0

前两条是用来禁用 ipv6, 最后后一条是不禁用 lo 上的 ipv6
zzzkkk
2022-12-09 12:44:43 +08:00
@tinkerer
谢谢大佬
这样搞了后 启动 httpd 正常了 监听在了 0.0.0.0 显示的是 tcp
但启动 caddy 还是监听在::: 显示的是 tcp6
zzzkkk
2022-12-09 13:03:29 +08:00
@ThirdFlame

实际上为同时监听了 v4 和 v6 就会这样显示。
你可以试试 curl 127.0.0.1:443 是通的

现在发现 的确监听了 ipv4 的 8443 端口
只是现在 naiveproxy 显示

[1209/130201.101:INFO:naive_proxy.cc(192)] Connection 42 closed: ERR_PROXY_CONNECTION_FAILED


[1209/130201.114:ERROR:ssl_client_socket_impl.cc(982)] handshake failed; returned -1, SSL error code 1, net_error -107
tinkerer
2022-12-09 20:27:09 +08:00
@zzzkkk 你的 Caddy 配置写的 0.0.0.0:443 么?
zzzkkk
2022-12-09 20:32:36 +08:00
@tinkerer
哎 今天才发现了 一定要 443 别的端口不行
tinkerer
2022-12-09 20:37:20 +08:00
@zzzkkk 解决了?
zzzkkk
2022-12-09 20:39:35 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/901188

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX