Multiple IP on a single interface & ovh bridge setup


Also i want to do this:

auto eth0
iface eth0 inet static
post-up route add dev eth0
post-up route add default gw
pre-down route del dev eth0
pre-down route del default gw
auto eth0:0
iface eth0:0 inet static

set interfaces ethernet eth0 address
set interfaces ethernet eth0 vif 0 address
set protocols static interface-route next-hop-interface eth0
set protocols static route next-hop

That might work.


The problem with that setup is this:
after reboot my ip route shows
default dev eth0 proto zebra

No matter if I do ip route del default, that route its always there.
is this line the problem?
“set protocols static route next-hop” ?


Yes, if you do “show ip route” from the vyos cli, you should see something like "recursive is directly connected, eth0). I am not sure why that happens, and it seems wrong to me. Perhaps interface-routes only work on point to point links.

However, that config would only work if could respond to an arp from on eth0. Vyos needs to do that arp to find the mac address of And the “recursive directly connected” will cause Vyos to arp for everything - which would be ok if is setup to do proxy arp, although it will cause a lot of arp traffic.


So what can I do?


Well, what is the configuration on - what ip address does have for your end of the link? What sort of device is that, and do you have control of it, or it that something provided by your upstream?

NetRange: -
Organization:   Harris Methodist Health Services (HMHS)

NetRange: -
Organization:   TransWare Enterprises Inc. (TRANSW)

Are those really your addresses?


Its ovh,
The real IP gw is
So I dont got control of it, dunno whats device is.


Ah, a google for “vyos ovh bridge” turns up

Does that help?


No, isnt the same than vyatta,
For example:
system {
gateway-address 91.y.y.254
That doesn’t work on vyos

And the solution it gave is doing the routes by hand.
“Obviously, this is a configuration which will no longer exist after a reboot. You need to apply this configuration juste after your system boot.”

There must be a way to set it up using vyatta config files


Add the following commands to /opt/vyatta/etc/config/scripts/vyatta-postconfig-bootup.script

route add dev eth2
route add default gw

and “delete protocols static” from the vyos config.

At the vyos cli level, there are no static routes. But when the vyos reboots, it will execute that vyatta-postconfig-bootup.script which will install the proper routes.


Oops, in your case, that should be eth0, not eth2.


doing that will be better than editing /etc/networks/interfaces with this?
post-up route add dev eth0
post-up route add default gw
pre-down route del dev eth0
pre-down route del default gw

This file will be stored in config.boot?


HellMind did you get this to work? I’m trying to setup VyOS on the Runabove cloud. It uses the same weird addressing system as OVH. I tried everything. There is a bug listed on this page as well:
I think it’s still unfixed. Is there somebody with a solution for recursive routing not working with a gateway in a different subnet?


Its working but I dont like it, I cant upgrade without doing everything again.

Anyone did it using the latest version?
is It fixed?


I’m using the latest version and it’s still not working properly. Using (which from my understanding have a similar setup as OVH) the following will work as a workaround in /config/scripts/vyatta-postconfig-bootup.script:

sudo ip route add 62.210.x.1/32 dev eth2 sudo ip route add default via 62.210.x.1

However it would be nice if we could get an ETA for a proper solution for this problem[/php]


Jhigrgr, that survives an upgrade?


Yes. See also

The static interface route can be left in the vyos cli, with only the default route in


If you modify vyatta-postconfig-bootup.script, then you install a new vyos, that cfg wont be in the new version.

so its the same than editing the /etc/network/interfaces file

So, there must be a way to make it persistent


I’m not sure if this helps but

I added the route to the to the gateway via an interface route then added a static default route. Seemed to work…

protocols {
static {
interface-route {
next-hop-interface eth0 {
route {
next-hop {

Also OVH wants to validate the MACs of your VMs. In there Ip management section you can create an “approved MAC” I’m not sure that is needed.