Problems with IPv6 on bridge interface

Hi all,

This weekend I was trying for the first time to get IPv6 working. I got an HE tunnel with the usual /64 and a /48 for my other networks.
All seems fine and not as horrifying as first looked upon :wink:
Then I ran in to trouble…

I must have done something wrong but I can not figure out what…
The problem is that I can not assign an IPv6 address to a bridge interface. I have a static mac address on the interfaces but still no luck.
I did try this…

/interface bridge add name=lobridge auto-mac=no admin-mac=01:00:00:00:01:00
# loopback address
/ipv6 address add address=2001:abc:defg:3::1/64 advertise=no interface=lobridge

And it worked… But using the same admin-mac on the ā€œrealā€ bridge did not work :frowning:
As an troubleshooting effort I connected a computer to local interface ā€œInternalā€ and it worked instantly. So it seems to be only bridge interfaces affected by this.
I have also rebooted several times. Still no luck.


Here is my current setup. As you can see in the last code section bridge1 and bridge2 is unreachable… Any ideas why and how I can fix it?

[admin@foo.bar] > interface  print detail 
Flags: D - dynamic, X - disabled, R - running, S - slave 
 0     name="Dmz" type="ether" mtu=1500 l2mtu=1600 max-l2mtu=9116 
 1  R  name="External" type="ether" mtu=1500 l2mtu=1600 max-l2mtu=9500 
 2  R  name="Internal" type="ether" mtu=1500 l2mtu=1600 max-l2mtu=9500 
 3     ;;; 5Ghz-A-N
       name="wlan1" type="wlan" mtu=1500 l2mtu=2290 
 4  R  ;;; xxxxx
       name="xxxx" type="pptp-out" mtu=1460 
 5  R  ;;; Wifi-1
       name="bridge1" type="bridge" mtu=1500 l2mtu=2290 
 6  R  ;;; Wifi-2
       name="bridge2" type="bridge" mtu=1500 l2mtu=2290 
 7     ;;; 2Ghz-B-G-N
       name="wlan2" type="wlan" mtu=1500 l2mtu=2290 
 8  R  ;;; W-1
       name="wlan3" type="wlan" mtu=1500 l2mtu=2290 
 9     ;;; W-2
       name="wlan4" type="wlan" mtu=1500 l2mtu=2290 
10  R  ;;; W-1
       name="wlan5" type="wlan" mtu=1500 l2mtu=2290 
11  R  ;;; W-2
       name="wlan6" type="wlan" mtu=1500 l2mtu=2290 
12     ;;; Home
       name="pptp-in1" type="pptp-in" 
13  R  ;;; HE IPv6
       name="sit1" type="sit" mtu=1280



[admin@foo.bar] > interface bridge print detail 
Flags: X - disabled, R - running 
 0  R ;;; Wifi-1
      name="bridge1" mtu=1500 l2mtu=2290 arp=reply-only mac-address=02:0C:42:3A:E9:49 protocol-mode=rstp priority=0x8000 auto-mac=no 
      admin-mac=02:0C:42:3A:E9:49 max-message-age=20s forward-delay=15s transmit-hold-count=6 ageing-time=5m 

 1  R ;;; Wifi-2
      name="bridge2" mtu=1500 l2mtu=2290 arp=reply-only mac-address=02:0C:42:3A:E8:64 protocol-mode=rstp priority=0x8000 auto-mac=no 
      admin-mac=02:0C:42:3A:E8:64 max-message-age=20s forward-delay=15s transmit-hold-count=6 ageing-time=5m



[admin@foo.bar] > interface bridge port print detail 
Flags: X - disabled, I - inactive, D - dynamic 
 0    interface=wlan5 bridge=bridge1 priority=0x80 path-cost=10 edge=auto point-to-point=auto external-fdb=auto horizon=none 
 1 I  interface=wlan4 bridge=bridge2 priority=0x80 path-cost=10 edge=auto point-to-point=auto external-fdb=auto horizon=none 
 2    interface=wlan3 bridge=bridge1 priority=0x80 path-cost=10 edge=auto point-to-point=auto external-fdb=auto horizon=none 
 3    interface=wlan6 bridge=bridge2 priority=0x80 path-cost=10 edge=auto point-to-point=auto external-fdb=auto horizon=none



[admin@foo.bar] > ipv6 address print detail 
Flags: X - disabled, I - invalid, D - dynamic, G - global, L - link-local 
 0  G address=2001:abc:xy:opq::2/64 interface=sit1 actual-interface=sit1 eui-64=no advertise=no 
 1  G address=2001:abc:defg:1::1/64 interface=Internal actual-interface=Internal eui-64=no advertise=yes 
 2  G address=2001:abc:defg:2::1/64 interface=Dmz actual-interface=Dmz eui-64=no advertise=no 
 3  G address=2001:abc:defg:3::1/64 interface=bridge1 actual-interface=bridge1 eui-64=no advertise=yes 
 4  G address=2001:abc:defg:4::1/64 interface=bridge2 actual-interface=bridge2 eui-64=no advertise=yes 
 5 DL address=fe80::53e3:ab22/128 interface=sit1 actual-interface=sit1 eui-64=no advertise=no 
 6 DL address=fe80::20c:42ff:fe25:e5b2/64 interface=External actual-interface=External eui-64=no advertise=no 
 7 DL address=fe80::20c:42ff:fe73:3247/64 interface=Internal actual-interface=Internal eui-64=no advertise=no



[admin@foo.bar] > ipv6 route print detail 
Flags: X - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, o - ospf, b - bgp, U - unreachable 
 0 A S  dst-address=2000::/3 gateway=2001:abc:xy:opq::1 gateway-status=2001:abc:xy:opq::1 reachable sit1 distance=1 scope=30 target-scope=10 
 1 ADC  dst-address=2001:abc:xy:opq::/64 gateway=sit1 gateway-status=sit1 reachable distance=0 scope=10 
 2 ADC  dst-address=2001:abc:defg:1::/64 gateway=Internal gateway-status=Internal reachable distance=0 scope=10 
 3 ADC  dst-address=2001:abc:defg:2::/64 gateway=Dmz gateway-status=Dmz unreachable distance=0 scope=200 
 4 ADC  dst-address=2001:abc:defg:3::/64 gateway=bridge1 gateway-status=bridge1 unreachable distance=0 scope=10 
 5 ADC  dst-address=2001:abc:defg:4::/64 gateway=bridge2 gateway-status=bridge2 unreachable distance=0 scope=10

Update…
I reviewed the log files this evening and saw this…
21:43:37 radvd,debug skip Router Advertisement sending on bridge1: no link local address
21:45:51 radvd,debug skip Router Advertisement sending on bridge2: no link local address


Best regards,
/Frank

what version you running? there is a lot of ipv6 stuff added in the upcoming 5.8, so you might try the ā€œsecretā€ 5.8 versions that are floating around the forum…

Hi jandafields,

Thanks for your advice. However to my knowledge the beta of 5.8 is only standard package. I use NTP and Multicast as well. So I have to stick to the official releases. :frowning:


Anyhow last night I found out what the problem was.
The issue was that the bridge interfaces needed to have ARP enabled. I was using Reply-Only and for some to me unknown reason it would not create a local-link without ARP enabled.
After enabling ARP on the bridge interface it took 10-15sec before it created the link interfaces. :open_mouth:

I never looked at this when the issue occurred since I was under the impression that ARP was no longer needed.
From what I have reed on the matter ARP was replaced by NDP.

Does anyone know why this is required?