diff --git a/libnetwork/drivers/ipvlan/ipvlan_store.go b/libnetwork/drivers/ipvlan/ipvlan_store.go index 46bd719401..00421aa7f4 100644 --- a/libnetwork/drivers/ipvlan/ipvlan_store.go +++ b/libnetwork/drivers/ipvlan/ipvlan_store.go @@ -188,7 +188,12 @@ func (config *configuration) UnmarshalJSON(b []byte) error { config.Mtu = int(nMap["Mtu"].(float64)) config.Parent = nMap["Parent"].(string) config.IpvlanMode = nMap["IpvlanMode"].(string) - config.IpvlanFlag = nMap["IpvlanFlag"].(string) + if v, ok := nMap["IpvlanFlag"]; ok { + config.IpvlanFlag = v.(string) + } else { + // Migrate config from an older daemon which did not have the flag configurable. + config.IpvlanFlag = flagBridge + } config.Internal = nMap["Internal"].(bool) config.CreatedSlaveLink = nMap["CreatedSubIface"].(bool) if v, ok := nMap["Ipv4Subnets"]; ok {