部分网段用户不能访问到不同网段某台服务器的解决办法

背景

先来说一下背景,大约10天前我在配置rsync同步时,重启了服务器,重启后发现服务器突然连不上了,检查各种东西,试了各种办法调试测试,最后判断确实是服务器有问题,详细查看后发现服务器莫名多了两个网卡配置文件,最后导致三个网卡配置文件同时应用在了同一个网卡上,最后导致22段服务器连不上21段的计算机。
这里写图片描述

解决:

vim进入多出来的两个网卡配置文件,将onboot=no,禁用此配置文件,然后service network restart 重启网卡服务,最终服务器可以正常连接局域网内各台计算机。
下面说说都用了什么方法进行测试:

  1. 不同网段ip与服务器互相ping,检测是否能通;同网段ip与服务器互相ping,检测是否能通;服务器与本网段的网关ping,服务器与不同网段网关ping,看是否能ping通。根据是否能通,继续搜索网上相应问题的解决办法。
  2. 与其他能ping通的服务器更换ip,检测是否能ping通,继续确定问题出现在交换机还是服务器。
  3. 应用路由跟踪命令(Linux用traceroute,windows用tracert),跟踪路由能否通过网关并成功到达指定ip。关于这条命令的详细解释在下篇博客会有详细说明。

ping不通的几种可能原因

平时使用中经常会碰到ping不通的情况,ping不通的原因有很多,比如路由设置问题,比如网络问题,以下列出几点原因。

  1. 太心急。即网线刚插到交换机上就想Ping通网关,忽略了生成树的收敛时间。当然,较新的交换机都支持快速生成树,或者有的管理员干脆把用户端口
    (access port)的生成树协议关掉,问题就解决了。
  2. 某些路由器端口是不允许用户Ping的。
  3. 访问控制。不管中间跨越了多少跳,只要有节点(包括端节点)对ICMP进行了过滤,Ping不通是正常的。最常见的就是防火墙的行为。
  4. 多路由负载均衡场合。比如Ping远端目的主机,成功的reply和timed out交错出现,结果发现在网关路由器上存在两条到目的网段的路由,两条路由权重相等
    ,但经查一条路由存在问题。(多路由这个个人不太熟悉)
  5. 网络因设备间的时延太大,造成ICMPecho报文无法在缺省时间(2秒)内收到。时延的原因有若干,比如线路(卫星网时延上下星为540毫秒),
    香港服务器租用路由器处理时延,或路由设计不合理造成迂回路径。使用扩展Ping,增加timed out时间,可Ping通的话就属路由时延太大问题。
  6. 引入NAT的场合会造成单向Ping通。NAT可以起到隐蔽内部地址的作用,当由内Ping外时,可以Ping通是因为NAT表的映射关系存在,当由外发起Ping内网主机
    时,就无从查找边界路由器的NAT表项了。
  7. 指定源地址的扩展Ping.登陆到路由器上,Ping远程主机,当ICMP echorequest从串行广域网接口发出去的时候,路由器会指定某个IP地址作为源IP,这个IP地址
    可能不是此接口的IP或这个接口根本没有IP地址。而某个下游路由器可能并没有到这个IP网段的路由,导致不能Ping通。可以采用扩展Ping,指定好源IP地址。
  8. IP地址分配不连续。地址规划出现问题象是在网络中埋了地雷,地址重叠或掩码划分不连续都可能在Ping时出现问题。比如一个极端情况,A、B两台主机,
    经过多跳相连,A能Ping通B的网关,而且B的网关设置正确,但A、B就是Ping不通。经查,在B的网卡上还设有第二个地址,并且这个地址与A所在的网段重叠。

解释都比较专业,不过很全面。最后再分享一个同样遇到此情况,但问题不同的帖子。或许会帮到同样有此问题的朋友。
http://bbs.51cto.com/thread-891207-1.html

要实现不同 VLAN 和不同网段的设备能够访问同一服务器,需要在网络中进行多方面的配置,包括交换机、路由器或三层交换机的设置。以下是详细的配置方法和步骤: ### 1. 使用三层交换机实现 VLAN 间通信 三层交换机具备路由功能,可以实现不同 VLAN 之间的通信。通过在三层交换机上配置 VLAN 接口(SVI),为每个 VLAN 分配 IP 地址作为默认网关,并启用路由功能,即可实现跨 VLAN 的数据转发[^1]。 ```bash # 示例:Cisco 三层交换机配置命令 Switch(config)# interface vlan 10 Switch(config-if)# ip address 192.168.10.1 255.255.255.0 Switch(config-if)# exit Switch(config)# interface vlan 20 Switch(config-if)# ip address 192.168.20.1 255.255.255.0 Switch(config-if)# exit Switch(config)# ip routing ``` 上述配置使 VLAN 10 和 VLAN 20 能够互相通信,服务器可以部署在任意 VLAN 中,其他 VLAN 的设备可通过三层交换机访问服务器。 ### 2. 使用路由器实现 VLAN 间路由(Router on a Stick) 如果使用的是二层交换机并希望实现 VLAN 间通信,则可以通过“单臂路由”方式将流量交给路由器处理。此时需要在交换机上配置 Trunk 端口连接到路由器,并在路由器上创建子接口以处理不同 VLAN 的流量,每个子接口对应一个 VLAN 并配置相应的 IP 地址[^1]。 ```bash ! Cisco 路由器配置示例 interface FastEthernet0/0.10 encapsulation dot1Q 10 ip address 192.168.10.1 255.255.255.0 ! interface FastEthernet0/0.20 encapsulation dot1Q 20 ip address 192.168.20.1 255.255.255.0 ``` 交换机端口需配置为 Trunk 模式,允许所需 VLAN 流量通过: ```bash Switch(config-if)# switchport mode trunk Switch(config-if)# switchport trunk allowed vlan 10,20 ``` ### 3. 配置服务器接入网络 为了使服务器同时被多个 VLAN 访问,可以将其接入具有三层路由能力的设备(如三层交换机)所管理的 VLAN 中。如果服务器所在的 VLAN 不是所有 VLAN 的默认网关所在 VLAN,则需要确保路由表中有通往该 VLAN 的路径。 也可以考虑将服务器置于共享 VLAN 或 DMZ 区域,并将该 VLAN 设置为所有 VLAN 的路由可达目标,从而实现统一访问。 ### 4. 利用 ACL 控制访问权限 在实现互通的同时,建议配置访问控制列表(ACL)以限制不同 VLAN 对服务器访问权限,确保安全性。例如,仅允许特定 VLAN 或 IP 地址访问服务器的某些服务端口: ```bash access-list 101 permit tcp 192.168.10.0 0.0.0.255 host 192.168.30.100 eq www access-list 101 deny ip any host 192.168.30.100 ! interface vlan 30 ip access-group 101 in ``` ### 5. 跨网段通信配置 对于不同网段之间的访问,通常依赖于路由协议(静态路由或动态路由协议如 RIP、OSPF)来建立可达性。确保每三层设备都拥有正确的路由条目,使得数据包可以正确转发至目标网段。 ---
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值