IPv4 TCP会话上的IPv4和IPv6前缀

news/2024/7/10 2:02:22 标签: 网络, bgp, cisco, 路由器

IPv4 TCP会话上的IPv4和IPv6前缀
图1

配置目标:
在R1通过bgp发布ipv6前缀,使R2收到有效路由条目
R2出现三条ipv6路由条目为标准
图2

配置过程:
ipv4接口地址之间建立邻接关系,在ipv6地址簇内激活ipv4邻居。
静态路由的配置是为了IPv6前缀注入BGP中。

R1
interface GigabitEthernet0/0
ip address 10.0.0.38 255.255.255.252
ipv6 address 2001:DB8:A:5::2/64
!
router bgp 500
bgp log-neighbor-changes
neighbor 10.0.0.37 remote-as 100
!
address-family ipv4
neighbor 10.0.0.37 activate
exit-address-family
!
address-family ipv6
network 2001:DB8:5:1::/64
network 2001:DB8:5:2::/64
network 2001:DB8:5:3::/64
neighbor 10.0.0.37 activate
exit-address-family
!
ipv6 route 2001:DB8:5:1::/64 Null0
ipv6 route 2001:DB8:5:2::/64 Null0
ipv6 route 2001:DB8:5:3::/64 Null0

R2
interface GigabitEthernet0/0
ip address 10.0.0.37 255.255.255.252
ipv6 address 2001:DB8:A:5::1/64
!
router bgp 100
bgp log-neighbor-changes
neighbor 10.0.0.38 remote-as 500
!
address-family ipv4
neighbor 10.0.0.38 activate
exit-address-family
!
address-family ipv6
neighbor 10.0.0.38 activate
exit-address-family
!

配置完以上部分,R2的ipv6路由表中并没有ipv6路由,需要做进一步排查以识别该问题。
R2#debug bgp ipv6 unicast updates in
R2#clear bgp ipv6 unicast 500 soft in
图3
从红框中可以发现,该下一跳地址是通过ipv4映射的ipv6地址格式将该地址填充到ipv6下一跳地址字段中,所以R2接收端的bgp进程无法识别该地址为有效的下一跳地址,从而拒绝了这些路由。

这里需要配置一条策略,将默认的下一跳地址更改为宣告接口的ipv6地址,配置ipv6前缀列表,路由映射更改下一跳地址为ipv6接口地址2001:DB8:A:5::2该路由映射用作出站策略,告诉对端下一跳是 2001:DB8:A:5::2。道理相同,R2也要配置更改下一跳地址。

R1
ipv6 prefix-list v6-routes seq 5 permit 2001:DB8:A::/48 le 64
route-map v6-next-hop permit 10
match ipv6 address prefix-list v6-routes
set ipv6 next-hop 2001:DB8:A:5::2

!
address-family ipv6
network 2001:DB8:5:1::/64
network 2001:DB8:5:2::/64
network 2001:DB8:5:3::/64
neighbor 10.0.0.37 activate
neighbor 10.0.0.37 route-map v6-next-hop out
exit-address-family
!

R2
ipv6 prefix-list v6-routes seq 5 permit 2001:DB8::/32 le 64
route-map v6-next-hop permit 10
match ipv6 address prefix-list v6-routes
set ipv6 next-hop 2001:DB8:A:5::1

!
address-family ipv6
neighbor 10.0.0.38 activate
neighbor 10.0.0.38 route-map v6-next-hop out
exit-address-family
!

图4
查看调试效果,目前已经拥有期望的下一跳地址,并且从调试信息中也可以得知传送BGP更新2001:db8:5:1::/64等路由信息的ipv4 TCP 会话位于ipv4子网10.0.0.36/30上,而下一跳地址位于同一个BGP更新接口上的ipv6子网2001:DB8:A:5::/64上,因而下一跳地址不在建立EBGP会话的同一个子网上。

修改配置,让R2接受两跳之外的下一跳地址,如果要R1也传输ipv6路由信息也要做相同配置。

R2
router bgp 100
bgp log-neighbor-changes
neighbor 10.0.0.38 remote-as 500
neighbor 10.0.0.38 ebgp-multihop 2
!

R1
router bgp 500
bgp log-neighbor-changes
neighbor 10.0.0.37 remote-as 100
neighbor 10.0.0.37 ebgp-multihop 2
!

图5
为什么需要修改多跳为两跳的原因:

如果下一跳地址不属于IPv4对等体所在的子网,那么IPv6不会自动接受来自IPv4对等体的路由。下一跳所属的IPv6地址可以与IPv4子网共享同一条链路,此时会被视为非直连,因而需要配置多跳EBGP以接受“非本地”子网。
在ipv4地址为结构的地址簇中传送ipv6路由信息,这个ipv6路由信息需要下一跳地址也为IPv6地址,那么身为拥有IPv4地址和IPv6地址的同一个接口。会被视为非直连,所以需要配置多跳EBGP。


http://www.niftyadmin.cn/n/1271239.html

相关文章

mft文件记录属性头包括_NTFS文件系统-MFT的属性头

前面说过MFT是有一个个属性组成,那么每个属性的具体结构又是如何呢?MFT属性的类型很多,但它们都有个共同的特点,那就是每个属性都有属性头和属性体。属性头又分为常驻属性和非常驻属性。常驻属性和非常驻数据最大的区别是常驻属性…

Linux系统如何将某一程序设置为开机自启动

文章来源:百度知道. Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤。加载内核LILO启动之…

二层交换机telnet到路由器方法途径

二层交换机telnet到路由器方法途径拓扑图配置效果拓扑图 IP地址配置按拓扑图中配置 老二层交换机部分不支持路由协议,因此就按照第二种方法操作。 配置 从SW2 telnet 到R1有两种方法 1、交换机支持路由协议的情况 SW1: ospf 1 router-id 2.2.2.2 area 0.0.0.0 ne…

8乘8led点阵显示数字_8乘以8点阵显示依次从左往右全部点亮,有老哥有51编程语言吗?...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼***************************************************************************************/#include "reg51.h" //此文件中定义了单片机的一些特殊功能寄存器#includetypedef unsigned int u16; //对数据类型进行声明…

第七章——字符串(代码点视图)

本文系阅读阅读原章节后总结概括得出。由于需要我进行一定的概括提炼,如有不当之处欢迎读者斧正。如果你对内容有任何疑问,欢迎共同交流讨论。 有时候我们需要直接对底层的代码点进行一些操作,而不是处理Character,这有以下几个原…

hive 修改分桶数 分桶表_Hive SQL之分区表与分桶表

Hive sql是Hive 用户使用Hive的主要工具。Hive SQL是类似于ANSI SQL标准的SQL语言,但是两者有不完全相同。Hive SQL和Mysql的SQL方言最为接近,但是两者之间也存在着显著的差异,比如Hive不支持行级数据的插入、更新和删除,也不支持…

华为 DHCP基本配置及概念

DHCP实验 一、基本概念 (1)DHCP服务器 负责从地址池中分配地址给HDCP客户端,可以为DHCP客户端提供其他网络参数(dns服务器地址、域名、租期等、默认网关等),还可以处理来自本网段或跨网段由HDCP中继转发的…

暴力探测蓝牙设备工具redfang

2019独角兽企业重金招聘Python工程师标准>>> 暴力探测蓝牙设备工具redfang 根据是否可以被扫描到,蓝牙设备具有可见(Disoverable)和不可见(non discoverable)两种模式。为了扫描不可见蓝牙设备,…