現象
Tomcat部署在校園網機器,校園內可訪問,外網無法訪問,雖然IP顯示相同且固定。
核心原因
校園網分配的是內網IP(私有地址),非公網IP:
- 常見內網段:
10.x.x.x、172.16-31.x.x、192.168.x.x。
- 路由器/防火牆做NAT,內網機器無公網入口,外網無法主動連接。
- 「IP相同」可能指機器內網IP固定,但外網看到的是學校出口公網IP。
解決方案
- 內網穿透(推薦):
- Frp/Ngrok/Nps:VPS部署服務端,校園機器跑客戶端映射端口。
- 花生殼/ZeroTier/TeamViewer:圖形化傻瓜式。
- 學校網絡中心申請公網IP/端口映射:教學/科研項目可申請,需走流程。
- 反向代理:校內有公網服務器做Nginx反代(需學校允許)。
- 云端部署:直接用阿里云/騰訊云/輕量應用服務器(學生優惠幾十元/年)。
安全提醒
暴露Tomcat管理端口(8080/8443)到公網極危險,**務必**:
- 修改默認端口、禁用管理頁、設置強密碼。
- 配置
RemoteAddrValve限制訪問IP。
- 生產環境前置Nginx + WAF + HTTPS。
驗證方法
# 校內機器查看公網IP
curl ifconfig.me
# 或
curl ip.sb
若返回IP與ifconfig見到的不同,確認為NAT內網環境。