split-horizon产生的路由欺骗

split-horizon产生的路由欺骗

RIP协议中,无论是产生路由环路还是收敛慢都是我们不愿意看到的。当然它也有一些辅助的措施来补救,比如:

  1. Split-horizon(水平分割)
  2. Split-horizon with poisoned reverse(带毒性逆转的水平分割)
  3. Triggered update(触发更新)
  4. Holddown timer
  5. Define a maximum hop count(定义最大值)

split-horizon 用于应对两点之间的相互路由欺骗,潜台词的含义便是,超过2个及以上 的路由使用split-horizon仍会出现路由欺骗。

split-horizon简介

split-horizon和Split-horizon with poisoned reverse本质上是一回事,他的含义便是从一端收到的路由信息不会再重复传回去

(带毒性即是可以重复传回去,但此时会将重复路由的跳数设为16,也就是最大,这样对方即使收到也会抛弃这个条目,相当于没有收到。)

欺骗问题

但是这样并没有完全解决欺骗问题,路由仍有可能产生环路。
如下图:
仅有split-horizon

在路由器 A 与路由器 D 之间链路未故障时,到达路由器 A 的路由表

RouterNext Routercost
BC3
CD2
DA1

此时A与D之间链路发生故障

对于路由器D,D->A 的消耗为 16

由于split-horizon, C不会向D扩散路由表,B不会向 C 扩散路由表

但是B可以向D扩散路由表,此时D认为B->A的消耗为3,D->B 的消耗为 5,D 自认为可以到达 A,消耗为 8

此时B,C,D三者均认为自己可以到达A

RouterNext Routercost
BC3
CD2
DB8

三者继续广播,D 向 C 广播,D->A 的消耗为 8,

则 C 进行更新路由表

RouterNext Routercost
CD9

C 向 B 广播,C->A 的消耗为 9
则 B 进行更新路由表

则B 进行更新路由表

RouterNext Routercost
BC10

B 向 D 广播,B->A 的消耗为 10
则 D 进行更新路由表

则D 进行更新路由表

RouterNext Routercost
DB15

继续进行广播更新

C 更新路由表

RouterNext Routercost
CD16

可以看出,此时C才知道有链路损坏,跳数到了16

此前B,C,D之间形成了路由环路,导致了“坏消息”不能快速传递

避免split-horizon造成的这种路由欺骗,就要用到后面的Triggered update(触发更新)等规则了

### Split-Horizon DNS 的概念与实现方式 Split-Horizon DNS 是一种技术,允许基于客户端请求的来源提供不同的 DNS 响应。这种机制通常用于区分内部网络和外部网络中的主机名解析需求。通过这种方式,可以保护敏感资源仅限于特定范围内的访问者可见。 #### 工作原理 当一个 DNS 查询到达服务器时,服务器会根据查询者的 IP 地址判断其属于哪个网络环境(例如内部局域网或互联网)。随后,DNS 服务器返回相应的记录集合给查询方。对于同一个域名,在不同环境中可能对应完全不同的地址列表[^2]。 #### 配置方法概述 以下是 split-horizon DNS 的典型配置过程: 1. **定义多个视图** 使用 BIND 或其他支持多视图功能的 DNS 软件来创建独立的视图。这些视图分别服务于内部用户和外部用户的请求。 ```bash view "internal" { match-clients { 192.168.1.0/24; localhost; }; recursion yes; zone "example.com" IN { type master; file "/etc/bind/zones/internal/example.com.db"; }; }; view "external" { match-clients { any; }; recursion no; allow-query-cache { none; }; zone "example.com" IN { type master; file "/etc/bind/zones/external/example.com.db"; }; } ``` 2. **设置区域文件** 对于上述每种视图,都需要准备对应的区域数据文件。例如,“internal”视图下的 `example.com` 可能指向本地服务IP地址;而“external”视图则映射到公开可用的服务端口。 3. **测试验证** 完成初始部署之后,应该从各种位置尝试执行 nslookup 或 dig 测试命令以确认是否按预期收到差异化的响应结果。 #### 技术优势 - 提升安全性:隐藏不必要的细节免受外界窥探; - 改善性能体验:减少跨广域网的数据传输延迟; - 方便管理维护:集中控制内外部命名空间的一致性和更新操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值