I found a different way to replicate the bug, this time it crashes ALL
the IPv6 sessions connected to multiple Foundry switches (cisco seems
fine). I have setup a v6 session with a tcp md5sig like so:

group "peers-rs-v6" {
        announce IPv6 unicast
        announce IPv4 none
        softreconfig in yes
        enforce neighbor-as yes
        set nexthop no-modify
        local-address 2001:7F8:1::A500:6777:4

        neighbor 2001:7f8:1::A500:1200:1 {
                descr "AS1200-v6-01"
                remote-as 1200
                announce all
                passive
                tcp md5sig password hondjes
        }

        neighbor 2001:7f8:1::a504:8345:1 {
                descr "XSNEWS-v6-01"
                remote-as 48345
                announce all
                passive
                max-prefix 5
        }

}

# bgpctl s s
AS1200-v6-01             1200       9042       8142     0 00:13:34 Idle
XSNEWS-v6-01            48345       9374       8492     0 00:12:22      1/5

While in Idle, the session logs the following in daemon:

Feb 23 14:00:03 radix-new bgpd[19498]: Connection attempt from neighbor
2001:7f8:1::a500:1200:1 (AS1200-v6-01) while session is in state Idle
Feb 23 14:00:23 radix-new bgpd[19498]: Connection attempt from neighbor
2001:7f8:1::a500:1200:1 (AS1200-v6-01) while session is in state Idle

I then clear the peering with the md5 hash:

bgpctl neigh AS1200-v6-01 clear

# bgpctl neigh AS1200-v6-01 clear
request processed
# bgpctl s s
XSNEWS-v6-01            48345       9380       8497     0 00:14:35      1/5
AS1200-v6-01             1200       9042       8142     0 00:17:15 Active

but then after a few seconds, when the session becomes alive, the empty
update get send out, and all foundry based v6 sessions reset.

# bgpctl s s
XSNEWS-v6-01            48345       9381       8501     0 00:00:11 Idle
AS1200-v6-01             1200       9047       8152     0 00:00:11 Idle

This is what daemon shows:

Feb 23 14:07:31 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01): state change Idle -> Active, reason: Start
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01): state change Active -> OpenSent, reason: Connection opened
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01): state change OpenSent -> OpenConfirm, reason: OPEN
message received
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01): state change OpenConfirm -> Established, reason:
KEEPALIVE message received
Feb 23 14:07:43 radix-new bgpd[25932]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01) AS1200: update 2001:7b8:200::/48 via 2001:7f8:1::a500:1200:1
Feb 23 14:07:43 radix-new bgpd[25932]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01) AS1200: update 2001:610:140::/48 via 2001:7f8:1::a500:1200:1
Feb 23 14:07:43 radix-new bgpd[25932]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01) AS1200: update 2001:7f8:1::/48 via 2001:7f8:1::a500:1200:1
Feb 23 14:07:43 radix-new bgpd[8490]: nexthop 2001:7f8:1::a500:1200:1
now valid: directly connected
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01): received notification: error in UPDATE message,
attribute list error
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:1
(AS1200-v6-01): state change Established -> Idle, reason: NOTIFICATION
received
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:2
(AS1200-v6-02): received notification: error in UPDATE message,
attribute list error
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:2
(AS1200-v6-02): state change Established -> Idle, reason: NOTIFICATION
received
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a504:8345:2
(XSNEWS-v6-02): received notification: error in UPDATE message,
attribute list error
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a504:8345:2
(XSNEWS-v6-02): state change Established -> Idle, reason: NOTIFICATION
received
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a504:8345:1
(XSNEWS-v6-01): received notification: error in UPDATE message,
attribute list error
Feb 23 14:07:43 radix-new bgpd[19498]: neighbor 2001:7f8:1::a504:8345:1
(XSNEWS-v6-01): state change Established -> Idle, reason: NOTIFICATION
received
Feb 23 14:08:13 radix-new bgpd[19498]: neighbor 2001:7f8:1::a504:8345:2
(XSNEWS-v6-02): state change Idle -> Active, reason: Start
Feb 23 14:08:13 radix-new bgpd[19498]: neighbor 2001:7f8:1::a504:8345:1
(XSNEWS-v6-01): state change Idle -> Active, reason: Start
Feb 23 14:08:13 radix-new bgpd[19498]: neighbor 2001:7f8:1::a500:1200:2
(AS1200-v6-02): state change Idle -> Active, reason: Start

I'm running the latest openbgpd version (from cvs, 2 days ago) on amd64.

Kind regards,

Arnoud Vermeer

Henning Brauer schreef:
> * Stuart Henderson <s...@spacehopper.org> [2009-01-30 17:59]:
>   
>> On 2009-01-29, Arnoud Vermeer <arnoud.verm...@ams-ix.net> wrote:
>>     
>>> While looking in to the problem, we found out that OpenBGPD sends a
>>> empty UPDATE, on which quagga responds by terminating the process.
>>>
>>>       
>> ...
>>     
>>> While doing a tcpdump we found the following packets leading to a
>>> NOTIFICATION. As you can see, frame 19 is an empty UPDATE packet.
>>>       
>> Isn't that an end-of-RIB marker?
>>     
>
> yep.

Reply via email to