Вопрос понял, а вот ваше решение осознать не осилил
я бы вообще не стал делать tap и прочие br0
все можно просто промаршрутизировать
по такой схеме:
A --link1--> B --link2-> С
- A - это шлюз провайдера
- B - VPS
- С - ваш сервер с проектом
- link1 это тот VLAN куда вам адреса сгрузили
- link2 - тунель openvpn
все решается простой маршрутизацией
на своем сервере C вешаете IP1 на интерфейс lo1
sudo ip link add name lo1 type dummy
поднимаете туннель openvpn (B сервер, C клиент и не забыть push "redirect-gateway def1" в конфиге)
на хосте B указываете статический маршрут на IP1 в туннель
Дальше спросить того кто выдал IP1 адрес как он смашрутизирован на A.
если как хостовый маршрут где next-hop указывает на хост B то все уже должно работать.
если его просто для вас зарезервировали в VLAN (link1) без отдельного маршрута, то тут два пути
- proxy-arp т.е. интерфейс B должен отвечать на arp для хоста IP1 своим mac-ом
- анонсировать IP1 динамикой