How to route a /56 ipv6 prefix to a vm

I'm trying to route a /56 acquired on the host using BGP. Instead of using a bridge I would like to have full L3 routing internally. For it, I am using a tap between the host and the vm.

What I did for now:

on the host:
Code:
route -6 -net <prefix>/56 -interface tap0
ifconfig tap0 inet6 <subprefix>::1/64

on the guest
Code:
ifconfig vtnet0 inet6 <subprefix>::2/64
route -6 add default <subprefix>::1

Where subprefix is a /64 subnet of the /56 (the first one is :200).

Doing above I can ping each others and ping /beeing pinged from/ an external ip on the guest. But once I want to handle anotther subnet from the /56 on one interface of the vm (say :201), I can't ping it neither one remote host on this subnet can:

Code:
ifconfig vtnet1 inet6 <subprefix2>::1/64

What do I miss on the vm to be able to use the rest of the prefix routed to it?
 
SirDice I meant , the main goal here is to have the host acting as a router and announce all paths it needs via BGP. So there would be no bridge there, this is why I figured I had to make it addressable from the guest. What would be the other alternative?
 
Back
Top