最近在用之前活动买的阿里云服务器搞点玩具项目,先从游双大佬的《Linux高性能服务器编程》搞起,兴冲冲的码了一通书上的代码,一运行就报错:
很奇怪啊,明明设置好了安全组,怎么会无法绑定呢?
最后经过一波冲浪,发现这是阿里云的锅,它的网卡地址是内网地址,它自己会把内网地址与外网相互转换,所以说你要搞网络编程的话,ip地址得填服务器私网ip。
公网ip和私网ip可以在阿里云实例列表里查看
总结一下:
用阿里云进行socket编程一定要注意:
服务器端ip地址记得写私网ip,客户端访问时填公网ip。
安全组记得要开,端口号要授权,防火墙开。