云服务器ECS创建好了,外部却打不开,这种情况在阿里云上很常见。多数时候问题出在阿里云外网IP上:要么没有分配,要么分配了没绑对,要么端口没放行。先弄清它的类型和查看方式,排查会快很多。

外网IP和内网IP有什么区别
内网IP只能在同一个私有网络里互通,手机、电脑或其他服务器都访问不到。外网IP可以被互联网直接访问,网站、接口或远程桌面要对外提供服务,就必须有它。在阿里云上,外网IP一般挂在具体资源上,比如云服务器ECS、负载均衡SLB或NAT网关。
怎么查看外网IP
最可靠的位置是阿里云控制台。进入“云服务器ECS”,在实例列表里可以直接看到公网IP;如果绑定的是弹性公网IP,去“弹性公网IP”页面查看。
有个常见的误区:登录服务器后执行ifconfig或ip addr,看到的通常是内网地址。这是正常的,ECS的公网地址由网络映射提供,操作系统内部一般不直接持有它。想确认服务器对外访问时使用的出口地址,可以在服务器上访问一个能返回来源IP的网页,结果就是它的公网出口。这个方法适合排查出站访问,比如对方要求配置白名单的时候。
三种外网IP的来源
常见的获取方式有三种,选哪种取决于服务是否需要固定地址。
- 实例自带公网IP:创建ECS时可以选择分配。配置简单,但它和实例绑定,实例停机或释放后地址可能被收回,不适合长期对外的服务。
- 弹性公网IP(EIP):单独购买和管理,可以解绑后再绑到其他实例上。需要固定地址,或者以后可能换服务器,用它更省事。
- 负载均衡或NAT网关的公网IP:负载均衡用来统一对外入口,NAT网关让内网服务器通过固定出口访问互联网。多台机器需要对外服务时,通常用这种方式,而不是给每台机器都配公网地址。
一次上线卡住的经过
假设你在杭州地域开了一台ECS做个人博客,创建时没有勾选公网IP,浏览器访问一直超时。排查下来,实例只有内网地址,外部请求根本进不来。
处理方法是在同一地域购买一个弹性公网IP,再绑定到这台ECS上,之后用这个地址访问即可。如果将来要换服务器,只需解绑EIP再绑到新实例上,地址不变,域名解析一般也不用改。
所以外网IP用哪种方式,最好在上线前就定下来。服务已经对外之后再调整,要挑时间,还要考虑访问中断的影响。
绑定弹性公网IP的步骤
以弹性公网IP为例,流程大致如下:
- 进入控制台的“弹性公网IP”页面,创建EIP。
- 地域要和目标ECS保持一致,地域不同无法绑定,这是最常见的卡点。
- 在EIP列表中点击“绑定”,选择对应的实例。
- 绑定完成后,在实例详情或EIP列表中确认地址。
控制台的按钮位置和名称会随版本调整,操作时以页面实际显示为准。
安全组放行别图省事
外网IP一开放,服务就暴露在公网上。端口配置过宽,是很多入侵事件的起点。放行规则时可以注意以下几点:
- 只放行业务需要的端口:网站一般只需要80和443。不要图方便对所有地址开放全部端口,那样等于把门敞开。
- 远程管理端口限定来源:SSH的22端口或Windows远程桌面的3389端口,授权对象填写你自己的固定IP,而不是0.0.0.0/0。家庭宽带IP经常变动时,可以定期更新规则,或者先通过跳板机登录。
- 数据库不直接暴露公网:MySQL、Redis这类端口保留在内网,应用和数据库之间走内网地址访问。
- 定期查看安全中心:关注风险提示,尤其是弱口令和长期未更新的组件。这类问题比端口配置更常见,也更容易被利用。
绑定后仍然访问不了,按这个顺序查
EIP已经绑好,服务还是打不开,可以依次检查四项:安全组是否放行了对应端口,服务是否在本机正常监听,系统防火墙有没有拦截,域名解析是否指向了当前的外网地址。大部分问题在这四步里就能找到。
选型建议
选对外网IP类型,绑定到正确的地域,再把安全组收紧,这三件事做好,多数访问问题就不会反复出现。长期运行的业务优先用弹性公网IP,换机器时省心;临时测试用实例自带的公网地址就够了。