nProbe icon indicating copy to clipboard operation
nProbe copied to clipboard

nProbe BGP Plugin not able to start using IPv6 Address Family

Open netravnen opened this issue 1 year ago • 4 comments

Problem statement

Missing documentation concerning how to utilize the nProbe BGP Plugin to ingest IPv6 prefix information via BGP to nProbe collector.

https://github.com/ntop/nProbe/blob/master/bgp/bgp_probe_client.pl

https://www.ntop.org/guides/nprobe/plugins/bgp.html

Feature Request

Missing Ipv6 support.

Example configuration block with IPv6 addresses.

my $local_ip    = '2001:db8:bad:da1::1';
my $local_as    = 65002;
my $remote_ip   = '2001:db8:face:b00c::2';
my $remote_as   = 4200000000;
my $refresh = Net::BGP::Refresh->new(
    AFI      => Net::BGP::AFI_IP6,
    SAFI     => Net::BGP::SAFI_BOTH,
    );

Error in the system log is:

Mar 02 13:42:40 trafficanalyzer1 systemd[1]: Started nProbe BGP Plugin v6 - https://www.ntop.org/guides/nprobe/plugins/bgp.html.
Mar 02 13:42:40 trafficanalyzer1 perl[26709]: Undefined address for Socket::pack_sockaddr_in at /usr/lib/x86_64-linux-gnu/perl-base/Socket.pm line 172.
Mar 02 13:42:40 trafficanalyzer1 perl[26709]:  at /usr/local/share/perl/5.34.0/Net/BGP/Process.pm line 119.
systemd conf
 % cat /etc/systemd/system/bgp_probe_client_6.service
[Unit]
Description=nProbe BGP Plugin v6 - https://www.ntop.org/guides/nprobe/plugins/bgp.html
Requires=network.target nprobe.service
After=network.target nprobe.service systemd-networkd.service

[Service]
Type=simple
ExecStart=/usr/bin/perl /usr/local/bin/bgp_probe_client_6.pl
ExecStop=/bin/kill -15 $MAINPID
Restart=on-abnormal
RestartSec=5

[Install]
WantedBy=multi-user.target

System info

 % lsb_release -d 
Description:	Ubuntu 22.04.2 LTS

 % uname -p
x86_64

 % uname -r
5.15.0-67-generic

 % systemd-detect-virt 
kvm

netravnen avatar Mar 02 '23 14:03 netravnen

If I explicitly set the ListenAddress (in Net::BGP::Process), too. The error is this msg instead,

Mar 02 13:46:04 trafficanalyzer1 systemd[1]: Started nProbe BGP Plugin v6 - https://www.ntop.org/guides/nprobe/plugins/bgp.html.
Mar 02 13:46:04 trafficanalyzer1 perl[27093]: Undefined address for Socket::pack_sockaddr_in at /usr/lib/x86_64-linux-gnu/perl-base/Socket.pm line 172.
Mar 02 13:46:04 trafficanalyzer1 perl[27093]:  at /usr/local/bin/bgp_probe_client_6.pl line 144.
Mar 02 13:46:04 trafficanalyzer1 systemd[1]: bgp_probe_client_6.service: Main process exited, code=exited, status=29/n/a
Mar 02 13:46:04 trafficanalyzer1 systemd[1]: bgp_probe_client_6.service: Failed with result 'exit-code'.

netravnen avatar Mar 02 '23 14:03 netravnen

The BGP plugin in nProbe is IPv4 only, as we have no way to test it with IPv6. Will offer this in order to add IPv6 support?

lucaderi avatar Mar 28 '23 14:03 lucaderi

we have no way to test it with IPv6

Is this due to missing test case(s)? Or other reasons?

Is there anything I as an end-user can possibly contribute to have IPv6 support for the nProbe BGP plugin without being a developer?

Will offer this in order to add IPv6 support?

I bit confused due the word placing in that sentence :confused: and the question mark at the end.

netravnen avatar Mar 29 '23 09:03 netravnen

Any update on proper v6 support? My ntop server lives behind a nat firewall and I have no desire to change that. I would prefer to setup v6 bgp sessions with my routers.

zunder1990 avatar Dec 25 '23 14:12 zunder1990