这两天在迁移服务器的时候,第一次是买了一个纯ipv6(但是带nat ipv4出口)的主机准备尝试能否部署,当时实际上论坛的容器都已经可以启动和访问了,只是邮件无法发送,在后台点击测试邮箱的时候报错:
邮件服务:xxxx failed
报错内容我具体记不清了,但是大概就是这样的
当时我以为是纯ipv6导致的无法访问 smtpdm.aliyun.com:25
,后来才发现不是的,貌似是阿里云的25端口屏蔽了国外IP的访问,
然后我就放弃了,退了这台IPv6的机子,另买了一台ipv4和v6都有的,结果迁移成功之后发现,卧槽,怎么还是不行,翻了翻discourse官方的文档,找到了这个工具,就想测试一下是否能访问,然后发现确实是ip无法访问的问题,具体的操作步骤如下:
## 进入容器
./launcher enter discourse-app
## 测试邮箱服务连接
telnet smtp.mailgun.org 587
## 阿里云的,25/80/465端口都可
telnet smtpdm.aliyun.com:80
执行之后如果没有反应,则表明无法使用该端口或者当前服务器无法连接到对应的smtp服务商,
如果有反应,则说明可以访问,那么按一下 Ctrl+]
键,然后输入 quit
退出telnet工具
我经过测试之后发现阿里云的服务25和465端口都不可用,但是80端口居然可以连接,总算是解决了这个问题。
参考链接: