Closed
Description
Report here based on dev/7.1 at git sha 1377170
Reference: (Negative tests)
- RFC 1195 s4.2 p31 Multiple IP Addresses per Interface
- RFC 5308 s3 p3 IPv6 Interface Address TLV
RFC Summary:
Level 1 LAN IS to IS Hello PDU
Each Interface corresponding to the SNPA over which a L1 LAN IIH
PDU is transmitted can have a maximum of 15 IPv6 Addresses
We necessarily modify the contents to be 0-15 16 octet IPv6 interface
addresses instead of 0-63 4 octet IPv4 interface address.
Failure:
ISIS code sends more then 15 IPv6 addresses (multiple tupples)
FRR is configured with > 16 addresses on a single interface:
comp15-dut(config)# interface eth2
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:0/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:1/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:2/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:3/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:4/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:5/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:6/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:7/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:8/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:9/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:10/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:11/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:12/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:13/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:14/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:15/64
comp15-dut(config-if)# ipv6 address fe80::2a0:95ff:fee0:16/64
which results in a ISIS Hello message with multiple tuples of IPv6 addresses:
Frame 1: 1514 bytes on wire (12112 bits), 1514 bytes captured (12112 bits)
IEEE 802.3 Ethernet
Logical-Link Control
ISO 10589 ISIS InTRA Domain Routeing Information Exchange Protocol
ISIS HELLO
.... ..10 = Circuit type: Level 2 only (0x2)
0000 00.. = Reserved: 0x00
SystemID {Sender of PDU}: 00b0.64bc.43a0
Holding timer: 30
PDU length: 1497
.100 0000 = Priority: 64
0... .... = Reserved: 0
SystemID {Designated IS}: 0000.0000.0000.00
Protocols Supported (t=129, l=2)
Type: 129
Length: 2
NLPID(s): IP (0xcc), IPv6 (0x8e)
Area address(es) (t=1, l=4)
Type: 1
Length: 4
Area address (3): 00.0001
IPv6 Interface address(es) (t=232, l=240)
Type: 232
Length: 240
IPv6 interface address: fe80::300:ff:fe10:1
IPv6 interface address: fe80::2a0:95ff:fee0:5
IPv6 interface address: fe80::2a0:95ff:fee0:4
IPv6 interface address: fe80::2a0:95ff:fee0:7
IPv6 interface address: fe80::2a0:95ff:fee0:16
IPv6 interface address: fe80::2a0:95ff:fee0:11
IPv6 interface address: fe80::2a0:95ff:fee0:12
IPv6 interface address: fe80::2a0:95ff:fee0:3
IPv6 interface address: fe80::2a0:95ff:fee0:0
IPv6 interface address: fe80::2a0:95ff:fee0:6
IPv6 interface address: fe80::2a0:95ff:fee0:13
IPv6 interface address: fe80::2a0:95ff:fee0:9
IPv6 interface address: fe80::2a0:95ff:fee0:2
IPv6 interface address: fe80::2a0:95ff:fee0:10
IPv6 interface address: fe80::2a0:95ff:fee0:8
IPv6 Interface address(es) (t=232, l=48)
Type: 232
Length: 48
IPv6 interface address: fe80::2a0:95ff:fee0:1
IPv6 interface address: fe80::2a0:95ff:fee0:15
IPv6 interface address: fe80::2a0:95ff:fee0:14
Padding (t=8, l=255)
Padding (t=8, l=255)
Padding (t=8, l=255)
Padding (t=8, l=255)
Padding (t=8, l=138)
(packet as pcap attached)
isis_fail.zip