Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

After set "ip ospf network broadcast", ospfd will close connection and exit. #17508

Open
2 tasks done
Jinl-jia opened this issue Nov 26, 2024 · 16 comments
Open
2 tasks done
Labels
triage Needs further investigation

Comments

@Jinl-jia
Copy link

Description

After set "ip ospf network broadcast",vtysh will print :
vtysh: error reading from ospfd: Resource temporarily unavailable (11)Warning: closing connection to ospfd because of an I/O error!

Version

181234# show version 
FRRouting 10.1-dev (181234) on Linux(5.4.0-150-generic).
Copyright 1996-2005 Kunihiro Ishiguro, et al.
configured with:
    '--prefix=/usr' '--includedir=${prefix}/include' '--bindir=${prefix}/bin' '--sbindir=${prefix}/lib/frr' '--libdir=${prefix}/lib/frr' '--libexecdir=${prefix}/lib/frr' '--localstatedir=/var/run/frr' '--sysconfdir=/etc/frr' '--with-moduledir=${prefix}/lib/frr/modules' '--enable-user=frr' '--enable-group=frr' '--enable-vty-group=frrvty'

How to reproduce

STEP1.
configuration:
DUT1#
interface enp0s3
ip ospf area 0
ip ospf network point-to-point
router ospf
ospf router-id 4.4.4.4

DUT2#
interface VLAN1
ip ospf area 0
ip ospf network point-to-point
router ospf
ospf router-id 1.1.1.1

STEP2.
configure DUT2:
DUT2# configure
DUT2(config)# interface enp0s3
DUT2(config-if)# ip ospf network broadcast
DUT2(config-if)# exit
DUT2(config)# no router ospf
DUT2(config)# router ospf
DUT2(config-router)# ospf router-id 1.1.1.1
DUT2(config-router)# end

STEP3.
configure DUT1:

DUT1# configure
DUT1(config)# interface enp0s3
DUT1(config-if)# ip ospf network broadcast
vtysh: error reading from ospfd: Resource temporarily unavailable (11)Warning: closing connection to ospfd because of an I/O error!

Expected behavior

There should be no message and error when set command.

Actual behavior

Error message is printed to screen and ospfd exited

Additional context

No response

Checklist

  • I have searched the open issues for this bug.
  • I have not included sensitive information in this report.
@Jinl-jia Jinl-jia added the triage Needs further investigation label Nov 26, 2024
@donaldsharp
Copy link
Member

what's the stack trace?

@Jafaral
Copy link
Member

Jafaral commented Nov 26, 2024

I can't reproduce this.

@Jinl-jia
Copy link
Author

Jinl-jia commented Nov 27, 2024

@donaldsharp only this :vtysh: error reading from ospfd: Resource temporarily unavailable (11)Warning: closing connection to ospfd because of an I/O error! ,then vtysh exit

@Jinl-jia
Copy link
Author

Jinl-jia commented Nov 27, 2024

@Jafaral please repeat step 1-3 several times and check,thanks

@Jinl-jia
Copy link
Author

Here are the behavior of 10.3:
Hello, this is FRRouting (version 10.3-dev).
Copyright 1996-2005 Kunihiro Ishiguro, et al.

181234# show ip ospf neighbor

Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL
1.1.1.1 1 Full/- 3.453s 36.540s 192.168.1.101 enp0s3:192.168.1.100 1 0 0

181234# show ip ospf neighbor

Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL
1.1.1.1 1 Full/- 4.406s 35.587s 192.168.1.101 enp0s3:192.168.1.100 1 0 0

181234# con
181234(config)# interface enp0s3
181234(config-if)# ip ospf network broadcast
vtysh: error reading from ospfd: Resource temporarily unavailable (11)Warning: closing connection to ospfd because of an I/O error!
181234(config-if)#
181234(config-if)# end
Warning: connecting to ospfd...failed!
181234# show ip ospf neighbor
Warning: connecting to ospfd...success!
% OSPF is not enabled in vrf default
181234#

@ne-vlezay80
Copy link
Contributor

ne-vlezay80 commented Nov 28, 2024

Here are the behavior of 10.3: Hello, this is FRRouting (version 10.3-dev). Copyright 1996-2005 Kunihiro Ishiguro, et al.

181234# show ip ospf neighbor

Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL 1.1.1.1 1 Full/- 3.453s 36.540s 192.168.1.101 enp0s3:192.168.1.100 1 0 0

181234# show ip ospf neighbor

Neighbor ID Pri State Up Time Dead Time Address Interface RXmtL RqstL DBsmL 1.1.1.1 1 Full/- 4.406s 35.587s 192.168.1.101 enp0s3:192.168.1.100 1 0 0

181234# con 181234(config)# interface enp0s3 181234(config-if)# ip ospf network broadcast vtysh: error reading from ospfd: Resource temporarily unavailable (11)Warning: closing connection to ospfd because of an I/O error! 181234(config-if)# 181234(config-if)# end Warning: connecting to ospfd...failed! 181234# show ip ospf neighbor Warning: connecting to ospfd...success! % OSPF is not enabled in vrf default 181234#

Please provide backtrace or ospfd logs.

@Jinl-jia
Copy link
Author

ospf.txt
@ne-vlezay80 thanks

@ne-vlezay80
Copy link
Contributor

There backtrace:

OSPF: Received signal 11 at 1732845536 (si_addr 0x18, PC 0x55c3550d7660); aborting...
OSPF: zlog_signal+0xf3                   7f546d7b76a3     7ffc7ba93cf0 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: core_handler+0xb1                  7f546d7efcd1     7ffc7ba93e30 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: funlockfile+0x50                   7f546d0d0980     7ffc7ba93f80 /lib/x86_64-linux-gnu/libpthread.so.0 (mapped at 0x7f546d0be000)
OSPF:     ---- signal ----
OSPF: ospf_get_name+0                    55c3550d7660     7ffc7ba943f8 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: ospf_ls_retransmit_add+0x10e       55c3550ea31e     7ffc7ba94400 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: ospf_flood_through_interface+0x1da     55c3550ea52a     7ffc7ba94450 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: ospf_flood_through_area+0x98       55c3550eaaa8     7ffc7ba944b0 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: ospf_lsa_refresh+0xf5              55c35508b005     7ffc7ba944f0 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: ospf_router_lsa_update_area+0x26     55c35508b326     7ffc7ba94590 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: ospf_ism_event+0x126               55c355081f36     7ffc7ba945b0 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: event_call+0x83                    7f546d802253     7ffc7ba945f0 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: _event_execute+0xac                7f546d80258c     7ffc7ba94690 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: ip_ospf_network+0x15c              55c3550b5a7c     7ffc7ba946f0 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: cmd_execute_command_real+0x1c0     7f546d786250     7ffc7ba94750 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: cmd_execute_command+0xe9           7f546d7863c9     7ffc7ba947c0 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: cmd_execute+0x142                  7f546d7865f2     7ffc7ba94820 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: vty_command+0x147                  7f546d807877     7ffc7ba94880 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: vty_execute+0x30                   7f546d807ab0     7ffc7ba96930 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: vtysh_read+0xcb                    7f546d80b99b     7ffc7ba96960 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: event_call+0x83                    7f546d802253     7ffc7ba96bb0 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: frr_run+0xc0                       7f546d7aec90     7ffc7ba96c50 /usr/lib/frr/libfrr.so.0 (mapped at 0x7f546d6f0000)
OSPF: main+0x1d8                         55c355076968     7ffc7ba96d70 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: __libc_start_main+0xe7             7f546cceec87     7ffc7ba96d90 /lib/x86_64-linux-gnu/libc.so.6 (mapped at 0x7f546cccd000)
OSPF: _start+0x2a                        55c35507751a     7ffc7ba96e50 /usr/lib/frr/ospfd (mapped at 0x55c354ff6000)
OSPF: no thread information available

@ne-vlezay80
Copy link
Contributor

ne-vlezay80 commented Nov 29, 2024

Frr 10.2 from alpine linux edge (10.2) on incus from debian bookworm: Bug is not appers.

@Jinl-jia
Copy link
Author

Jinl-jia commented Dec 3, 2024

@ne-vlezay80 Please perform STEP3 immediately after STEP2,thanks

@ne-vlezay80
Copy link
Contributor

Alpine linux 3.20 on Incus from debian bookworm. Bug is not appers.

two# conf t                                                                                                                                                                                                                              
two(config)# no router ospf                                                                                                                                                                                                              
two(config)# router ospf                                                                                                                                                                                                                 
two(config-router)# ospf router-id 172.30.255.1                                                                                                                                                                                          
For this router-id change to take effect, use "clear ip ospf process" command                                                                                                                                                            
two(config-router)# exut                                                                                                                                                                                                                 
% Unknown command: exut                                                                                                                                                                                                                  
two(config-router)# exit                                                                                                                                                                                                                 
two(config)# interface eth0                                                                                                                                                                                                              
two(config-if)# ip ospf network point-to-point                                                                                                                                                                                           
two(config-if)# exit                                                                                                                                                                                                                     
two(config)# exit                                                                                                                                                                                                                        
two# clear ip ospf                                                                                                                                                                                                                       
interface  neighbor   process    vrf                                                                                                                                                                                                     
two# clear ip ospf process  

@Jinl-jia
Copy link
Author

Jinl-jia commented Dec 9, 2024

@ne-vlezay80 Are you operating on one device ?

@ne-vlezay80
Copy link
Contributor

@ne-vlezay80 Are you operating on one device ?

yes. Alpine linux

@Jinl-jia
Copy link
Author

@ne-vlezay80 Are you operating on one device ?

yes. Alpine linux

thanks,Please refer my steps,You have to use two devices and establish neighbors.DUT1 and DUT2 means two devices.

@ne-vlezay80
Copy link
Contributor

@ne-vlezay80 Are you operating on one device ?

yes. Alpine linux

thanks,Please refer my steps,You have to use two devices and establish neighbors.DUT1 and DUT2 means two devices.

yes

@ne-vlezay80
Copy link
Contributor

ne-vlezay80 commented Dec 16, 2024

alpine linux 3.20 - not appers
debian 9 () - not available
debian 10 (frr 10.2 on deb.frrouting.org) - not appers
debian 11 (frr 10.2 on deb.frrouting.org) - not appers
debian 12 (frr 10.2 on deb.frrouting.org) - not appers
debian 13 (frr 10.1) - not appers

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
triage Needs further investigation
Projects
None yet
Development

No branches or pull requests

4 participants