Outgoing traffic for BGP IPv6

I am running BGP over GRE on my VyOS. I receive routes and full tables from upstream. This is for IPv6 only. I can’t ping any IPv6 hosts when BGP is running and connected to upstream.

When I run command ‘/usr/bin/traceroute 2606:4700:4700::1111’, the package will be dropped at the first hop. However, if I run it as ‘/usr/bin/traceroute --source=[my IPv6] 2606:4700:4700::1111’ and it will go through just find to the destination.

Any idea on why? And how do I change my settings to make outgoing IPv6 traffic flow normally. I have set IPv6 address within my BGP announcement to both eth0 (IPv4 WAN) and eth1 (LAN).

What does the routing table look like?
sh ipv6 route 2606:4700:4700::1111

Routing entry for 2606:4700:4700::/48
Known via “bgp”, distance 20, metric 0, best
Last update 08:25:55 ago

  • fe80::200:5efe:b92c:5311, via tun0, weight 1

fe80::200:5efe:b92c:5311 is the link-local address of my tun0.

I guess my VyOS instance has trouble selecting the WAN IP? How do I correct this issue

Here is my BGP configure
set protocols bgp [My AS Number] address-family ipv6-unicast network [My IPv6 /48 block]
set protocols bgp [My AS Number] neighbor 2a0c:9a40:100f:384::1 address-family ipv6-unicast prefix-list export ‘ExportTable’
set protocols bgp [My AS Number] neighbor 2a0c:9a40:100f:384::1 address-family ipv6-unicast route-map export ‘transit’
set protocols bgp [My AS Number] neighbor 2a0c:9a40:100f:384::1 address-family ipv6-unicast soft-reconfiguration inbound
set protocols bgp [My AS Number] neighbor 2a0c:9a40:100f:384::1 remote-as ‘34927’
set protocols bgp [My AS Number] parameters default no-ipv4-unicast
set protocols bgp [My AS Number] parameters router-id ‘my wan ipv4’

You are getting a route through tun0 and you want to send traffic through the WAN interface (not tun0)?
Can you give the output of the command:
show interfaces

I am running a BGP via GRE tunnel.

Interface        IP Address                        S/L  Description
---------        ----------                        ---  -----------
eth0             38.13.*.*/20                   u/u  Internet
                 2a0c:*:*:*:2::1/64
eth1             192.168.0.1/24                    u/u  Local
                 2a0c:*:*:*::1/64
lo               127.0.0.1/8                       u/u
                 ::1/128
tun0             2a0c:9a40:100f:384::2/64          u/u  BGPTunnel

One thing very interesting. When I turn on IPv6 Router Advertisement, devices on the network could get IPv6 access. VyOS does know how to route traffic. It’s just the Router Itself doesn’t seem to know how to select proper IPv6 address for traffic.

Set in the route map use a global address as next hop for IPv6

How do I do that? I think the route map is received from BGP peers. Do you mean I should set BGP next-hop self?

Some combinations of

vyos@r14# set policy route-map FOO rule 10 set ipv6-next-hop 
Possible completions:
   global               Nexthop IPv6 global address
   local                Nexthop IPv6 local address
   peer-address         Use peer address (for BGP only)
   prefer-global        Prefer global address as the nexthop

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.