Project

General

Profile

Bug #6721

Incorrect OpenBGPd package scripts prevent use of both IPv4 and IPv6

Added by Luzemario Dantas almost 3 years ago. Updated over 2 years ago.

Status:
Needs Patch
Priority:
Normal
Category:
openbgpd
Target version:
-
Start date:
08/16/2016
Due date:
% Done:

0%

Estimated time:
Affected Version:
All
Affected Architecture:
All

Description

Symtoms of this bug can be seen in the post below:

[[https://forum.pfsense.org/index.php?topic=116900.0]]

To correct this you need to add a new "Listen on IP" field in the "settings" tab for IPv6, so package scripts can set the correct "Listen on IP" address for IPv6. Actually the script incorrectly copies the IPv4 "Listen on IP" value to IPv6, breaking the start of BGP daemon.

History

#1 Updated by Luzemario Dantas almost 3 years ago

Please read the title as: Incorrect OpenBGPd package scripts prevent use of both IPv4 and IPv6 - at the same time.

#2 Updated by Luzemario Dantas almost 3 years ago

Steps to reproduce:

1. Install the latest OpenBGPd package;
2. Enter the needed settings, adding both IPv4 and IPv6 prefixes;
3. Fill the other tabs with neighbor info and other settings as usual;
4. Save all settings;
5. Watch on "Raw config" the "listen-on-ip" for IPv6 settings. There is a IPv4 address there;
6. Click on "status" tab. The PID for BGPd is missing, indicating BGPd did not start;
7. On command shell, try "bgpd -d". An error message is thrown and the service does not start.

#3 Updated by Jim Pingle almost 3 years ago

  • Target version deleted (2.4.0)

#4 Updated by Jim Thompson over 2 years ago

  • Assignee set to Jim Pingle

#5 Updated by Jim Pingle over 2 years ago

  • Status changed from New to Needs Patch
  • Assignee changed from Jim Pingle to Luzemario Dantas

Unless there is a compelling need to set it to listen on two specific addresses manually, leave "Listen on IP" blank and it should listen on both IPv4 and IPv6.

If someone wants to test and submit a patch to do separate IPv4 and IPv6 "Listen on IP" address boxes, it wouldn't be tough to do, but it doesn't appear to be strictly necessary at this point. Using the raw config tab can easily work around it as well.

#6 Updated by Luzemario Dantas over 2 years ago

Hi Jim,

Leaving "Listen on IP" blank makes the default IPv4 address "0.0.0.0" to be put on both IPv4 and IPv6 "local-address" directives of raw config when using groups. This still prevents bgpd daemon from starting because "0.0.0.0" is a IPv4 dot-formatted address (and the daemon expects a colon formatted address when IPv6 family is used on that group).

A workaround for this is setting the "Local address X" extra parameter to a valid IPv6 colon-formatted address for each neighbor, so the default "local-address" for IPv6 will get this address instead of an IPv4 dot-formatted address copied from "listen on" clause.

We applied this here because we have several WAN links with both IPv4 and IPv6 BGP sessions established, so it was necessary to have specific "local-address" directives defined.

Also available in: Atom PDF