Thanks for replying. I'm trying to use --network-veth and not 
--network-ipvlan or --network-mavlan. To my understanding the 
--network-veth flag uses an internal DHCP managed by systemd to give the 
nspawn instance a NATed address, just as Docker and rkt do (which both work 
as expected in Digital Ocean). Does --network-veth really depend on having 
an external DHCP server?

On Sunday, November 27, 2016 at 7:01:39 PM UTC+2, Alex Crawford wrote:
>
> On 11/27, Roey Darwish Dror wrote: 
> > I tried these steps on both a Digital Ocean CoreOS droplet and a PC 
> running 
> > Arch Linux. On the PC running Arch Linux the VM could access the 
> internet. 
> > On the CoreOS droplet I got "No route to host". 
> > 
> > I'm using CoreOS stable and both the Arch Linux machine and the CoreOS 
> > droplet use systemd 231, so I assumed that it's not a bug in systemd. 
>
> I've only got bad news for you. DigitalOcean does not support DHCP. 
> Traditionally, they modified the root partition before booting, adding 
> in the network configuration. On CoreOS, we have a tool, 
> coreos-metadata [1], that reads from their metadata service and creates 
> networkd configuration files. This quasi-DHCP is the reason you don't 
> have IP addresses or routes inside of your container. 
>
> You'll need to use host networking if you want this to work on 
> DigitalOcean. Take a look at `toolbox`. We use `--share-system` and the 
> network devices are passed straight through. 
>
> It would also be helpful if you could remind DigitalOcean that their 
> lack of DHCP is an actual problem affecting users. I've been telling 
> them for years, but the more people they hear it from, the better. 
>
> -Alex 
>
> [1]: https://github.com/coreos/coreos-metadata 
>

Reply via email to