Thank you for reply Noth. It still doesn't work for me as expected. More
details at the bottom.

On Thu, Jul 23, 2026 at 01:36:03AM +0200, Noth wrote:
> On 22/07/2026 22:15, Mikolaj Kucharski wrote:
> 
> > Hi.
> > 
> > I was using for long the workaround of prefix 56 on an interface to make
> > IPv6 work in OVH. I tried today to make on-link setup work, but I fail to
> > figure out how, for IPv6.
> > 
> > I'm on -current.
> > 
> > # sysctl -n kern.version
> > OpenBSD 8.0-beta (GENERIC.MP) #51: Tue Jul 21 20:50:59 MDT 2026
> >      [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
> > 
> > 
> > Here is my hostnname.if(5):
> > 
> > ---8<---
> > inet xxx.xxx.xxx.aaa/32
> > !route -n add -inet -host xxx.xxx.xxx.254 -link -iface \$if
> > !route -n add -inet default xxx.xxx.xxx.254
> > 
> > inet6 zzzz:zzzz:zzz:zzdc::1 128
> > !route -n add -inet6 -host zzzz:zzzz:zzz:zzff:ff:ff:ff:ff -link -iface \$if
> > !route -n add -inet6 default zzzz:zzzz:zzz:zzff:ff:ff:ff:ff
> > 
> > up
> > --->8---
> > 
> > Above setup for IPv4 works, but for IPv6 doesn't. Execution looks 
> > successful:
> > 
> > # ifconfig ix0 -inet6
> > # sh /etc/netstart ix0
> > add host xxx.xxx.xxx.254: gateway ix0
> > add net default: gateway xxx.xxx.xxx.254
> > add host zzzz:zzzz:zzz:zzff:ff:ff:ff:ff: gateway ix0
> > add net default: gateway zzzz:zzzz:zzz:zzff:ff:ff:ff:ff
> > 
> > but it doesn't work:
> > 
> > # ping6 -n -c3 zzzz:zzzz:zzz:zzff:ff:ff:ff:ff
> > PING zzzz:zzzz:zzz:zzff:ff:ff:ff:ff (zzzz:zzzz:zzz:zzff:ff:ff:ff:ff): 56 
> > data bytes
> > ping6: sendmsg: Invalid argument
> > ping: wrote zzzz:zzzz:zzz:zzff:ff:ff:ff:ff 64 chars, ret=-1
> > ping6: sendmsg: Invalid argument
> > ping: wrote zzzz:zzzz:zzz:zzff:ff:ff:ff:ff 64 chars, ret=-1
> > ping6: sendmsg: Invalid argument
> > ping: wrote zzzz:zzzz:zzz:zzff:ff:ff:ff:ff 64 chars, ret=-1
> > 
> > --- zzzz:zzzz:zzz:zzff:ff:ff:ff:ff ping statistics ---
> > 3 packets transmitted, 0 packets received, 100.0% packet loss
> > 
> > 
> > # ndp -na | grep ff:ff
> > zzzz:zzzz:zzz:zzff:ff:ff:ff:ff          (incomplete)          ix0 permanent 
> > R
> > 
> > 
> > What I am missing?
> > 
> > Please CC me with any replies as I'm not subscribed to misc.
> 
> From man route's example:
> 
> Add a static inet6(4) route to a host which is on the vio0 interface that is
> outside your prefix, and use that host as a default gateway, as used by some
> hosting providers:
> 
>            # route add -inet6 2001:db8:efef::1 -cloning -link -iface vio0
>            # route add -inet6 default 2001:db8:efef::1
> 

Above is helpful and is a reference solution which is great. I missed
this in the route(8) man page.

I cannot reboot the machine at the moment, but at the same time I would
expect manual IPv6 reconfiguration to just work. I am doing all of this
over IPv4 configured the way as I showed earlier via hostname.if(5).

I don't have IPv6 connectivity even with -cloning. See following
commands:

# ifconfig ix0 -inet6

# route -n delete -inet6 default
delete net default: not in table

# route -n delete -inet6 zzzz:zzzz:zzz:zzff:ff:ff:ff:ff
delete host zzzz:zzzz:zzz:zzff:ff:ff:ff:ff: not in table

# route -n show -inet6
Routing tables

Internet6:
Destination                                 Gateway                             
    Flags   Refs      Use   Mtu  Prio Iface
::/96                                       ::1                                 
    UGRS       0        0 32768     8 lo0
::1                                         ::1                                 
    UHhl      10       20 32768     1 lo0
::ffff:0.0.0.0/96                           ::1                                 
    UGRS       0        0 32768     8 lo0
2002::/24                                   ::1                                 
    UGRS       0        0 32768     8 lo0
2002:7f00::/24                              ::1                                 
    UGRS       0        0 32768     8 lo0
2002:e000::/20                              ::1                                 
    UGRS       0        0 32768     8 lo0
2002:ff00::/24                              ::1                                 
    UGRS       0        0 32768     8 lo0
fe80::/10                                   ::1                                 
    UGRS       0       32 32768     8 lo0
fec0::/10                                   ::1                                 
    UGRS       0        0 32768     8 lo0
fe80::1%lo0                                 fe80::1%lo0                         
    UHl        0        0 32768     1 lo0
ff01::/16                                   ::1                                 
    UGRS       0       16 32768     8 lo0
ff01::%lo0/32                               fe80::1%lo0                         
    Um         0        1 32768     4 lo0
ff02::/16                                   ::1                                 
    UGRS       0       16 32768     8 lo0
ff02::%lo0/32                               fe80::1%lo0                         
    Um         0        1 32768     4 lo0

# ndp -na
Neighbor                                Linklayer Address   Netif Expire    S 
Flags
(no other output)


Based on above I assume this is a IPv6 clean start to reconfigure
the network.

# ifconfig ix0 inet6 zzzz:zzzz:zzz:zzdc::1/128 up

# route -n add -inet6 -host zzzz:zzzz:zzz:zzff:ff:ff:ff:ff -cloning -link 
-iface ix0
add host zzzz:zzzz:zzz:zzff:ff:ff:ff:ff: gateway ix0

# route -n add -inet6 default zzzz:zzzz:zzz:zzff:ff:ff:ff:ff
add net default: gateway zzzz:zzzz:zzz:zzff:ff:ff:ff:ff


# ping6 -n -c3 zzzz:zzzz:zzz:zzff:ff:ff:ff:ff
PING zzzz:zzzz:zzz:zzff:ff:ff:ff:ff (zzzz:zzzz:zzz:zzff:ff:ff:ff:ff): 56 data 
bytes

--- zzzz:zzzz:zzz:zzff:ff:ff:ff:ff ping statistics ---
3 packets transmitted, 0 packets received, 100.0% packet loss


# ping6 -n -c3 ipv6.google.com
PING ipv6.l.google.com (2a00:1450:4008:802::200e): 56 data bytes

--- ipv6.l.google.com ping statistics ---
3 packets transmitted, 0 packets received, 100.0% packet loss


# ndp -na
Neighbor                                Linklayer Address   Netif Expire    S 
Flags
zzzz:zzzz:zzz:zzdc::1                   0c:c4:7a:7b:71:0b     ix0 permanent R l
zzzz:zzzz:zzz:zzff:ff:ff:ff:ff          00:05:73:a0:00:01     ix0 28s       R R
fe80::ec4:7aff:fe7b:710b%ix0            0c:c4:7a:7b:71:0b     ix0 permanent R l
fe80::7270:8bff:fe3c:4d41%ix0           70:70:8b:3c:4d:41     ix0 23h53m53s S R

# ndp -na
Neighbor                                Linklayer Address   Netif Expire    S 
Flags
zzzz:zzzz:zzz:zzdc::1                   0c:c4:7a:7b:71:0b     ix0 permanent R l
zzzz:zzzz:zzz:zzff:ff:ff:ff:ff          00:05:73:a0:00:01     ix0 23h59m32s S R
fe80::ec4:7aff:fe7b:710b%ix0            0c:c4:7a:7b:71:0b     ix0 permanent R l
fe80::7270:8bff:fe3c:4d41%ix0           70:70:8b:3c:4d:41     ix0 10s       R R

# ndp -na
Neighbor                                Linklayer Address   Netif Expire    S 
Flags
zzzz:zzzz:zzz:zzdc::1                   0c:c4:7a:7b:71:0b     ix0 permanent R l
zzzz:zzzz:zzz:zzff:ff:ff:ff:ff          00:05:73:a0:00:01     ix0 23h54m38s S R
fe80::ec4:7aff:fe7b:710b%ix0            0c:c4:7a:7b:71:0b     ix0 permanent R l
fe80::7270:8bff:fe3c:4d41%ix0           70:70:8b:3c:4d:41     ix0 23h48m3s  S R


# route -n show -inet6
Routing tables

Internet6:
Destination                                 Gateway                             
    Flags   Refs      Use   Mtu  Prio Iface
default                                     zzzz:zzzz:zzz:zzff:ff:ff:ff:ff      
    UGS        1        9     -     8 ix0
::/96                                       ::1                                 
    UGRS       0        0 32768     8 lo0
::1                                         ::1                                 
    UHhl      10       20 32768     1 lo0
::ffff:0.0.0.0/96                           ::1                                 
    UGRS       0        0 32768     8 lo0
zzzz:zzzz:zzz:zzdc::1                       0c:c4:7a:7b:71:0b                   
    UHLl       0       18     -     1 ix0
zzzz:zzzz:zzz:zzff:ff:ff:ff:ff              00:05:73:a0:00:01                   
    UHLch      1       32     -     7 ix0
zzzz:zzzz:zzz:zzff:ff:ff:ff:ff              link#1                              
    UHCS       1        0     -     8 ix0
2002::/24                                   ::1                                 
    UGRS       0        0 32768     8 lo0
2002:7f00::/24                              ::1                                 
    UGRS       0        0 32768     8 lo0
2002:e000::/20                              ::1                                 
    UGRS       0        0 32768     8 lo0
2002:ff00::/24                              ::1                                 
    UGRS       0        0 32768     8 lo0
fe80::/10                                   ::1                                 
    UGRS       0       36 32768     8 lo0
fec0::/10                                   ::1                                 
    UGRS       0        0 32768     8 lo0
fe80::%ix0/64                               fe80::ec4:7aff:fe7b:710b%ix0        
    UCn        1        2     -     4 ix0
fe80::ec4:7aff:fe7b:710b%ix0                0c:c4:7a:7b:71:0b                   
    UHLl       0       24     -     1 ix0
fe80::7270:8bff:fe3c:4d41%ix0               70:70:8b:3c:4d:41                   
    UHLc       0       26     -     3 ix0
fe80::1%lo0                                 fe80::1%lo0                         
    UHl        0        0 32768     1 lo0
ff01::/16                                   ::1                                 
    UGRS       0       19 32768     8 lo0
ff01::%ix0/32                               fe80::ec4:7aff:fe7b:710b%ix0        
    Um         0        1     -     4 ix0
ff01::%lo0/32                               fe80::1%lo0                         
    Um         0        1 32768     4 lo0
ff02::/16                                   ::1                                 
    UGRS       0       19 32768     8 lo0
ff02::%ix0/32                               fe80::ec4:7aff:fe7b:710b%ix0        
    Um         0        4     -     4 ix0
ff02::%lo0/32                               fe80::1%lo0                         
    Um         0        1 32768     4 lo0


Above shows that OpenBSD can see mac-address of
zzzz:zzzz:zzz:zzff:ff:ff:ff:ff however I cannot ping6 typical IPv6
addresses which are pingable. I cannot reach the machine via
zzzz:zzzz:zzz:zzdc::1 from another part of the Internet too.

PF configuration is from the default install:

# sha256 < /etc/pf.conf
479bf4f96743322aa7aa914ca0fcaa993347da9fc7bb210c87a8cd7272a3cbaf

# sysctl -n kern.version
OpenBSD 8.0-beta (GENERIC.MP) #51: Tue Jul 21 20:50:59 MDT 2026
    [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP

# file /etc/sysctl.conf
/etc/sysctl.conf: cannot stat '/etc/sysctl.conf' (No such file or directory)


I didn't manage to configure anything on this machine yet as this is
fairly fresh install.

Any further tips are appreciated.

-- 
Regards,
 Mikolaj

Reply via email to