IPv6相关知识(smb/ssh/scp/浏览器访问)及碰到的坑

📅 2026/7/23 17:54:37 👁️ 阅读次数 📝 编程学习
IPv6相关知识(smb/ssh/scp/浏览器访问)及碰到的坑

IPv6地址访问SMB服务器

把IPv6地址中的:改成-,然后在结尾添加上.ipv6-literal.net
\\aaaa-bbb-cccc-dddd-eeee-ffff-gggg-aaaa.ipv6-literal.net
\\aaaa-bbb-cccc-dddd-eeee-ffff-gggg-aaaa.ipv6-literal.net\Movie

ssh/scp连接IPv6

sshyourusername@aaaa:bbb:cccc:dddd:eee:fff:1111:222sshyourusername@[aaaa:bbb:cccc:dddd:eee:fff:1111:222]scp./testfile yourusername@[aaaa:bbb:cccc:dddd:eee:fff:1111:222]:/destination/pathscpyourusername@[aaaa:bbb:cccc:dddd:eee:fff:1111:222]:/source/file/path ./

ssh/scp 报错 no matches found

在zsh里面某些字符需要手动转义(escape),例如[,],*,否则会报错no matches found: ...

sshyourusername@\[aaaa:bbb:cccc:dddd:eee:fff:1111:222\]scp./testfile yourusername@\[aaaa:bbb:cccc:dddd:eee:fff:1111:222\]:/destination/pathscpyourusername@\[aaaa:bbb:cccc:dddd:eee:fff:1111:222\]:/source/file/path ./# 拷贝当前目录下所有文件到目标服务器:scp./\* yourusername@\[aaaa:bbb:cccc:dddd:eee:fff:1111:222\]:/destination/path

也可以直接用bash去连接

$ /usr/bin/bash $sshyourusername@aaaa:bbb:cccc:dddd:eee:fff:1111:222 $scp./testfile yourusername@[aaaa:bbb:cccc:dddd:eee:fff:1111:222]:/destination/path

浏览器访问IPv6网址

http://[aaaa:bbb:cccc:dddd:eee:fff:1111:222]
https://[aaaa:bbb:cccc:dddd:eee:fff:1111:222]

访问服务器某端口

http://[aaaa:bbb:cccc:dddd:eee:fff:1111:222]:280

最方便的就是买个域名

需要提前配置DDNS(动态DNS)
ssh yourusername@sub.mydomain.cn
一个域名能注册好几个子域名,可以分别绑定不同的服务器。一个cn域名一年也就三四十块钱,xyz那些更便宜,强烈推荐

这个网址可以查询你所在网络环境是否支持IPv6

  • 坑1:手机用流量访问可能要关闭你的科学上网工具(电脑同理)
  • 坑2:ssh/scp 报错 no matches found,解决方法见上文

后记

还没有用上IPv6的强烈建议折腾一下,真的很方便,也是物联网时代的大势所趋。
现在我到任何地方都可以访问家里的服务器(on in one,软路由/服务器/网址/网盘and anything just i want),我自己实测跨市区访问,理论上是没有限制的,但是你所在的网络也要有IPv6,我在外面是用流量访问,现在三大运营商的移动网络在全国应该都配置了IPv6,所以用流量可以随时访问。wifi的话看你们公司有没有配置了,外面的wifi大多数都是没有配置IPv6的,电脑的话实在不行就手机开热点给电脑用,这些都是我亲测可以的。

OpenWRT配置IPv6我自己也做成笔记了,不过很多都是照搬某论坛一帖子的(包括图,虽然看那帖子也折腾了很久),所以就没有放上来,以后看情况po上来。