Hi,

- there is no " ignore lcp default netns" declaration in startup.conf or
init.conf. If you start VPP(systemctl vpp start) with no netns configured,
plugin linux_nl_plugin.so will not sync correct routing table and fail.
- If you run the entire VPP process inside netns dataplane, you can skip
configuration line "lcp default netns dataplane".
- To make "plugin linux_nl_plugin.so" working, you need to run VPP inside
netns dataplane (same as bird). This can be done by editing VPP systemd
startup file (add something like "
NetworkNamespacePath=/var/run/netns/dataplane" ) and ensuring that netns
"dataplane" will be started first.

Petr.



čt 22. 12. 2022 v 13:53 odesílatel Christopher Adigun <future...@gmail.com>
napsal:

> Hi Petr,
>
> Thanks for the response, bird is actually running in the dataplane ns:
>
> root@nat-gw-697d886cb4-xn62q:/etc/bird# *ip netns exec dataplane ip a*
> 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group
> default qlen 1000
>     link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
>     inet 127.0.0.1/8 scope host lo
>        valid_lft forever preferred_lft forever
>     inet6 ::1/128 scope host
>        valid_lft forever preferred_lft forever
>
>
>
>
>
>
>
>
>
>
>
> *2: loop0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP
> group default qlen 1000    link/ether de:ad:00:00:00:00 brd
> ff:ff:ff:ff:ff:ff    inet 192.168.163.2/32 <http://192.168.163.2/32> scope
> global loop0       valid_lft forever preferred_lft forever    inet6
> fe80::dcad:ff:fe00:0/64 scope link       valid_lft forever preferred_lft
> forever3: xe0-1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9001 qdisc mq state
> UNKNOWN group default qlen 1000    link/ether 02:40:0a:84:e3:83 brd
> ff:ff:ff:ff:ff:ff    inet 10.0.5.10/24 <http://10.0.5.10/24> scope global
> xe0-1       valid_lft forever preferred_lft forever    inet6
> fe80::40:aff:fe84:e383/64 scope link       valid_lft forever preferred_lft
> forever*
> root@nat-gw-697d886cb4-xn62q:/etc/bird#
> root@nat-gw-697d886cb4-xn62q:/etc/bird#
> root@nat-gw-697d886cb4-xn62q:/etc/bird# ip netns exec *dataplane *ip r
> 10.0.5.0/24 dev xe0-1 proto kernel scope link src 10.0.5.10
> 10.45.0.0/16 via 10.0.5.9 dev xe0-1 proto bird
>
> One other thing, I am running this in a kubernetes POD, maybe this might
> be affecting something.
>
> Also can you clarify how to perform *plugin "linux_nl_plugin.so" ignore
> "lcp default netns" configuration?* Should this be placed in the
> startup.conf or init.conf?
> I want to test without netns, I tried the following in the startup config
> but vpp was crashing
>
> plugin "linux_nl_plugin.so" {
>   ignore "lcp default netns"
> }
>
> I also tried using the full command in init.conf but that did not work.
>
>
> On Thu, Dec 22, 2022 at 4:22 AM Petr Boltík <petr.bol...@gmail.com> wrote:
>
>> Hi,
>>
>> there can be a few misconfigurations:
>> 1. "lcp default netns dataplane" start synchronizing
>> interfaces/address/etc inside netns "dataplane" (netns "dataplane" must
>> exist) - NOT synchronizing routes
>> 2. plugin "linux_nl_plugin.so" ignore "lcp default netns" configuration
>> =>  "linux_nl_plugin.so" will synchronize VPP with default namespace "0"
>>
>> Solution with netns:
>> 0. Create netns "dataplane" with systemd
>> 1. run VPP inside netns "dataplane" (edit systemd, start after previous
>> point)
>> 2. run Bird inside netns "dataplane" (edit systemd, start after previous
>> point)
>> 3. do not use "lcp default netns dataplane", it is controlled by VPP netns
>>
>> For running without netns only skip "lcp default netns dataplane".
>>
>> Petr
>>
>> čt 22. 12. 2022 v 10:07 odesílatel Pim van Pelt via lists.fd.io <pim=
>> ipng...@lists.fd.io> napsal:
>>
>>> Hoi,
>>>
>>> Is bird running in the 'dataplane' network namespace ?
>>>
>>> groet,
>>> Pim
>>>
>>> On Thu, Dec 22, 2022 at 12:52 AM Christopher Adigun <future...@gmail.com>
>>> wrote:
>>>
>>>> Hi,
>>>>
>>>> I am currently trying to use linx-cp plugins to sync routes learned via
>>>> BGP, bird is seeing the BGP route but I can't see the routes in VPP.
>>>>
>>>> Details:
>>>>
>>>> *vpp v22.10-release built by root on ff42e25458af at
>>>> 2022-10-26T14:00:24*
>>>>
>>>> *startup.conf:*
>>>>
>>>> unix {
>>>>   nodaemon
>>>>   log /tmp/vpp.log
>>>>   full-coredump
>>>>   gid vpp
>>>>   interactive
>>>>   cli-listen /run/vpp/cli.sock
>>>>   exec /etc/vpp/init.conf
>>>> }
>>>>
>>>> cpu {
>>>>   main-core 1
>>>>   corelist-workers 19
>>>> }
>>>>
>>>> memory {
>>>>   main-heap-size 2G
>>>> }
>>>> api-trace {
>>>>   on
>>>> }
>>>>
>>>> dpdk {
>>>>  dev 0000:00:09.0 {name n6}
>>>>  dev 0000:00:07.0 {name internet}
>>>> }
>>>>
>>>> api-segment {
>>>>   gid vpp
>>>> }
>>>>
>>>> plugins {
>>>>   path /usr/lib/x86_64-linux-gnu/vpp_plugins/
>>>>   plugin ping_plugin.so { disable }
>>>>   plugin linux_cp_plugin.so { enable }
>>>>   plugin linux_nl_plugin.so { enable }
>>>>   plugin dpdk_plugin.so { enable }
>>>> }
>>>>
>>>> *Init.conf:*
>>>>
>>>> lcp default netns dataplane
>>>> lcp lcp-sync on
>>>> lcp lcp-auto-subint on
>>>> create loopback interface instance 0
>>>> lcp create loop0 host-if loop0
>>>> set interface state loop0 up
>>>> set interface ip address loop0 192.168.163.2/32
>>>> lcp create n6 host-if xe0-1
>>>> set interface mtu 9001 n6
>>>> set interface mtu 9001 internet
>>>> set interface ip address n6 10.0.5.10/24
>>>> set interface ip address internet 10.0.4.9/24
>>>> set interface state n6 up
>>>> set interface state internet up
>>>> ip route add 0.0.0.0/0 via 10.0.4.1 internet
>>>> set cnat snat-policy addr 10.0.4.9
>>>> set cnat snat-policy if-pfx
>>>> set cnat snat-policy if table include-v4 internet
>>>> set cnat snat-policy prefix 10.45.0.0/16
>>>> set interface feature internet cnat-snat-ip4 arc ip4-unicast
>>>>
>>>> *BIRD routes:*
>>>>
>>>> root@nat-gw-697d886cb4-xn62q:/etc/bird# birdc show route all
>>>> BIRD 1.6.8 ready.
>>>> 10.45.0.0/16       via 10.0.5.9 on xe0-1 [neighbor_v4_1 23:13:04] *
>>>> (100) [i]
>>>>         Type: BGP unicast univ
>>>>         BGP.origin: IGP
>>>>         BGP.as_path:
>>>>         BGP.next_hop: 10.0.5.9
>>>>         BGP.med: 0
>>>>         BGP.local_pref: 100
>>>>
>>>> root@nat-gw-697d886cb4-xn62q:/etc/bird# ip r
>>>> 10.0.5.0/24 dev xe0-1 proto kernel scope link src 10.0.5.10
>>>> 10.45.0.0/16 via 10.0.5.9 dev xe0-1 proto bird
>>>>
>>>>
>>>> *BIRD config:*
>>>>
>>>> router id 194.1.163.2;
>>>>
>>>> protocol device { scan time 30; }
>>>> protocol kernel kernel4 {
>>>>   import none;
>>>>   export where source != RTS_DEVICE;
>>>>   learn off;
>>>>   scan time 300;
>>>> }
>>>>
>>>> protocol bgp neighbor_v4_1 {
>>>>   local as 65001;
>>>>   direct;
>>>>   neighbor 10.0.5.9 as 65001;
>>>> }
>>>>
>>>> Need any hint on troubleshooting this.
>>>>
>>>> Thanks
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>> --
>>> Pim van Pelt <p...@ipng.nl>
>>> PBVP1-RIPE - http://www.ipng.nl/
>>>
>>>
>>>
>>>
>>
>>
>>
> 
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#22366): https://lists.fd.io/g/vpp-dev/message/22366
Mute This Topic: https://lists.fd.io/mt/95817807/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/leave/1480452/21656/631435203/xyzzy 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to