news 2026/6/25 18:48:20

dns一样 两校区访问网站失败原由排查

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
dns一样 两校区访问网站失败原由排查

典型的网络架构问题,新老校区DNS相同但内网访问结果不同,说明问题出在网络路由或中间网络设备上,而不是DNS本身

根本原因很可能是:新校区的网络流量在返回时,没有正确地走“内网路径”回到老校区的服务器,而是被导向了互联网或错误的路径。

即使DNS解析出了正确的内网IP地址(比如192.168.1.100),但如果数据包在从新校区到老校区服务器的往返路途中,任何一程的路由不正确,访问就会失败。

一、基础连通性测试(在新校区操作)

  • 获取服务器IP:在老校区内网,ping一下网站域名,记下解析出的内网IP地址(例如10.10.10.10)。

  • 在新校区测试

    • ping 10.10.10.10(服务器的内网IP)。如果不通,说明三层(IP层)根本不可达,问题可能是路由缺失或防火墙拦截。

    • tracert -d 10.10.10.10(Windows)或traceroute -n 10.10.10.10(Linux/Mac)。这个命令是关键,它会显示数据包从新校区到老校区服务器经过的每一跳。

测试端口连通性

  • 如果ping不通但tracert显示路径正常,测试网站端口(通常是80或443):

  • telnet 10.10.10.10 80或使用Test-NetConnection 10.10.10.10 -Port 80(PowerShell)。

  • 如果端口不通,几乎可以确定是防火墙策略拦截

关键点排查

  • 路由表

    • 检查新校区核心路由器/三层交换机:是否有指向老校区服务器所在网段的静态路由(或动态路由是否正常学习到)下一跳正确与否

    • 检查老校区核心路由器/防火墙:是否有指向新校区网段的回程路由。

    • 这是最常见的问题点:两个校区间通过专线或VPN互联后,路由没有双向配通。

  • 防火墙/安全策略

    • 检查两个校区间防火墙/安全设备的访问控制列表(ACL)或安全策略。是否允许了新校区IP段访问老校区服务器的IP和端口

    • 检查服务器本身的主机防火墙(Windows防火墙、iptables等)是否限制了源IP,只允许了老校区网段。

  • 网络地址转换(NAT)问题

    • 如果新老校区之间有防火墙做了出口NAT,可能导致问题。需要确认在访问内网地址时,是否触发了不必要的NAT,或者有相应的NAT豁免策略(在Cisco上叫NAT bypassno-NATACL)。

  • 链路负载均衡或策略路由

    • 如果新校区有多个出口(如一条专线到老校区,一条直接到互联网),可能存在策略路由,将某些流量错误地引向了互联网出口。

情况

ping结果

tracert结果

最可能的原因

A

超时

路径显示到达了服务器IP,但最后几跳超时

服务器/防火墙阻断了ICMP​ 或服务器自身防火墙限制了源IP(10.0.0.0/16网段)

B

超时

路径在离开网关 (10.0.0.0) 后的几跳中断,或开始出现公网IP

核心路由缺失。新校区网络设备不知道如何去往10.0.0.0/16网段。(最常见)

C

目标主机无法访问

很快返回“无法访问目标主机”

网关 (1xx.xx.xx.xx) 直接就没有去往目标网段的路由。

D

成功

路径正常

则可能是网站服务本身(如IIS/Nginx)绑定了主机名或限制了访问IP,问题在应用层。

二、服务器端关键检查命令

步骤1:检查服务器网络配置
# 1. 查看服务器IP配置 ipconfig /all # 或(如果是Linux) # ifconfig 或 ip addr # 2. 查看路由表 route print # 或(Linux) # route -n 或 ip route # 3. 检查ARP表 arp -a
步骤2:检查服务器防火墙状态
Windows 服务器
# 1. 查看防火墙状态 netsh advfirewall show allprofiles state # 2. 查看入站规则(重点看80/443端口相关规则) netsh advfirewall firewall show rule name=all | findstr /I "80 443" # 3. 查看针对特定端口的规则 netsh advfirewall firewall show rule name=all | findstr /I "HTTP HTTPS 网站" # 4. 临时禁用防火墙(仅用于测试,测试后恢复) netsh advfirewall set allprofiles state off # 测试后记得开启 netsh advfirewall set allprofiles state on # 5. 查看详细的防火墙规则列表 netsh advfirewall firewall show rule name=all verbose

Linux 服务器:

# 1. 查看iptables规则
iptables -L -n -v
iptables -L -n -v --line-numbers # 显示规则编号

# 2. 查看firewalld状态(CentOS/RHEL 7+)
firewall-cmd --state
firewall-cmd --list-all
firewall-cmd --list-ports
firewall-cmd --list-services

# 3. 查看ufw状态(Ubuntu)
ufw status verbose

Nginx
# 1. 查看Nginx状态 systemctl status nginx # 2. 测试配置文件 nginx -t

三、Linux服务器防火墙排查

检查防火墙状态(根据发行版)
查看是否使用firewalld(CentOS/RHEL 7+)

sudo systemctl status firewalld
sudo firewall-cmd --state
sudo firewall-cmd --list-all

查看是否使用ufw(Ubuntu/Debian)

sudo ufw status verbose
sudo ufw status numbered

查看是否使用iptables(传统)

# 查看所有iptables规则
sudo iptables -L -n -v
sudo iptables -t nat -L -n -v
sudo iptables -t mangle -L -n -v

# 查看规则编号(方便删除)
sudo iptables -L -n -v --line-numbers

四、检查网络服务和端口

1. 查看监听的端口和服务:

# 查看所有监听端口
sudo netstat -tlnp
# 或
sudo ss -tlnp

# 查看特定端口
sudo netstat -tlnp | grep :80
sudo netstat -tlnp | grep :443

2. 查看路由表和网关:
# 查看路由表 ip route show # 或 route -n # 查看ARP表 ip neigh show # 或 arp -n

五、检查网站服务

查看运行中的web服务:

# 查看Apache状态
sudo systemctl status apache2 # Ubuntu
sudo systemctl status httpd # CentOS

# 查看Nginx状态
sudo systemctl status nginx

# 查看所有服务
sudo systemctl list-units --type=service | grep -E '(nginx|apache|httpd)'

# Apache配置检查
apache2ctl -S # Ubuntu
httpd -S # CentOS

# Nginx配置检查
nginx -t

六、防火墙规则管理

临时放行新校区IP段:

# 如果是iptables
sudo iptables -I INPUT -s 1xx.xx.0.0/16 -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -s 1xx.xx.0.0/16 -p tcp --dport 443 -j ACCEPT

# 查看添加的规则
sudo iptables -L INPUT -n -v

# 如果是firewalld
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="1xx.xx.0.0/16" port protocol="tcp" port="80" accept'
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="1xx.xx.0.0/16" port protocol="tcp" port="443" accept'
sudo firewall-cmd --reload

七、检查服务器路由表

# 查看完整路由表
ip route show
# 或
route -n

# 查看是否有到1xx.xx.0.0/16的路由
ip route | grep 1xx.xx

检查ARP解析

# 查看ARP表
ip neigh show
# 或
arp -n

#检查是否有多个默认网关
ip route | grep default

执行:route -n

服务器的路由表中有1xx.xx.0.0/16路由

示例:1xx.xx.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0

这是直连路由,网关为0.0.0.0,表示1xx.xx.0.0/16网段应该与服务器在同一二层网络

但这是错误的配置!因为1xx.xx.0.0/16是新校区网段,实际上不直接可达

ping不通证明路由错误:From 1xx.xx.0.0 icmp_seq=1 Destination Host Unreachable

核心错误原因

服务器上存在错误的路由配置,导致它认为1xx.xx.0.0/16网段是本地网络,数据包无法通过正确路由到新校区网络。应该通过eth0直接访问。但实际上,这个网段需要通过网关10.xx.xx.xx才能到达

解决

linux服务器终端执行:

# 删除错误路由
sudo ip route del 1xx.xx.0.0/16

# 添加正确路由
sudo ip route add 1xx.xx.0.0/16 via 10.xx.xx.xx

# 测试修复
ping -c 4 1xx.xx.xx.xx

# 在新校区电脑上执行
curl -I http://1x.x.x.x

八、具体问题分析

1. 路由配置错误
  • 路由表中存在一条错误的路由:1xx.xx.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0

  • 网关为0.0.0.0表示服务器认为1xx.xx.0.0/16网段是本地二层网络,应该通过eth0接口直接访问

  • 但实际上1xx.xx.0.0/16是新校区网络,必须通过网关10.240.100.1才能到达

2. 网络通信失败
  • 当服务器尝试ping 1xx.x.x.x时,它通过eth0接口直接发送ARP请求寻找目标主机

  • 由于1xx.xx.0.0/16实际不在本地网络中,ARP请求无法得到响应

  • ICMP错误消息来自1xx.xx.x.x,这可能是某个网络设备的接口IP,说明数据包在错误的方向上被处理

3. 根本矛盾

服务器配置中存在逻辑矛盾:

  • 默认路由:0.0.0.0 via 1x.xx.xx.xx(所有流量通过网关)

  • 但1xx.xx.0.0/16路由:via 0.0.0.0(直接连接)

解决方案要点

  1. 删除错误的路由sudo ip route del 1xx.xx.0.0/16

  2. 添加正确的路由sudo ip route add 1xx.xx.0.0/16 via 10.xx.xx.xx

  3. 此路由错误导致服务器无法正确与新校区通信,从而造成新校区无法访问网站的问题

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 3:03:14

百度网盘免登录直链下载:告别繁琐登录流程的智能解决方案

还在为百度网盘分享文件的下载流程而烦恼吗?每次面对朋友分享的重要文件,都需要经历注册、登录、验证码、限速下载的漫长折磨?现在,一款创新的免登录下载工具将彻底改变你的文件获取体验。 【免费下载链接】baiduwp-php A tool to…

作者头像 李华
网站建设 2026/6/18 5:41:08

C# WinForm程序调用Python接口运行GLM-4.6V-Flash-WEB模型

C# WinForm 调用 Python 接口运行 GLM-4.6V-Flash-WEB 模型 在智能制造、医疗影像和工业质检等场景中,越来越多的企业希望将前沿 AI 视觉能力嵌入到现有的本地化系统中。然而,许多关键业务系统仍基于 C# WinForm 构建——这类桌面应用稳定可靠&#xff…

作者头像 李华
网站建设 2026/6/17 7:54:21

Whisper时间戳技术终极指南:从入门到精通

Whisper时间戳技术终极指南:从入门到精通 【免费下载链接】whisper-timestamped Multilingual Automatic Speech Recognition with word-level timestamps and confidence 项目地址: https://gitcode.com/gh_mirrors/wh/whisper-timestamped 在当今数字化时代…

作者头像 李华
网站建设 2026/6/25 14:44:55

VutronMusic技术架构解析:构建跨平台音乐播放的专业解决方案

VutronMusic技术架构解析:构建跨平台音乐播放的专业解决方案 【免费下载链接】VutronMusic 高颜值的第三方网易云播放器,支持本地音乐播放、离线歌单、桌面歌词、Touch Bar歌词、Mac状态栏歌词显示、Linux-gnome桌面状态栏歌词显示。支持 Windows / macO…

作者头像 李华
网站建设 2026/6/13 0:01:41

无损音乐下载工具:网易云高品质音频获取指南

还在为找不到高品质音乐而烦恼吗?想要轻松获取专业级别的无损音乐文件吗?今天就来介绍这款实用的无损音乐下载工具,让你从标准音质到Hi-Res母带都能随心下载,打造专属的顶级听觉盛宴! 【免费下载链接】Netease_url 网易…

作者头像 李华
网站建设 2026/6/18 18:37:49

电子书转有声书:AI技术如何重塑您的听书体验

在数字化阅读时代,电子书转有声书技术正在彻底改变人们的阅读方式。借助先进的AI语音合成和智能章节识别技术,现在任何人都能轻松将电子书转换为带有完整章节结构的专业有声书。这项创新工具支持1100多种语言和方言,让您享受个性化的听书体验…

作者头像 李华