diff --git a/plugins/main/host-device/host-device.go b/plugins/main/host-device/host-device.go index 8a101fe03..2d515d572 100644 --- a/plugins/main/host-device/host-device.go +++ b/plugins/main/host-device/host-device.go @@ -211,6 +211,14 @@ func cmdDel(args *skel.CmdArgs) error { if err != nil { return err } + + // reboot node there no containerNs, first ipam del avoid ip leak + if cfg.IPAM.Type != "" { + if err := ipam.ExecDel(cfg.IPAM.Type, args.StdinData); err != nil { + return err + } + } + if args.Netns == "" { return nil } @@ -220,12 +228,6 @@ func cmdDel(args *skel.CmdArgs) error { } defer containerNs.Close() - if cfg.IPAM.Type != "" { - if err := ipam.ExecDel(cfg.IPAM.Type, args.StdinData); err != nil { - return err - } - } - if !cfg.DPDKMode { if err := moveLinkOut(containerNs, args.IfName); err != nil { return err