// Setup networking func setupNetworking(gw string) { if gw == "" { return } ip := net.ParseIP(gw) if ip == nil { log.Fatalf("Unable to set up networking, %s is not a valid IP", gw) return } if err := netlink.AddDefaultGw(ip); err != nil { log.Fatalf("Unable to set up networking: %v", err) } }
// Setup networking func setupNetworking(args *DockerInitArgs) error { if args.gateway == "" { return nil } ip := net.ParseIP(args.gateway) if ip == nil { return fmt.Errorf("Unable to set up networking, %s is not a valid IP", args.gateway) } if err := netlink.AddDefaultGw(ip); err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } return nil }
// Setup networking func setupNetworking(args *DockerInitArgs) error { if args.ip != "" { // eth0 iface, err := net.InterfaceByName("eth0") if err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } ip, ipNet, err := net.ParseCIDR(args.ip) if err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } if err := netlink.NetworkLinkAddIp(iface, ip, ipNet); err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } if err := netlink.NetworkSetMTU(iface, args.mtu); err != nil { return fmt.Errorf("Unable to set MTU: %v", err) } if err := netlink.NetworkLinkUp(iface); err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } // loopback iface, err = net.InterfaceByName("lo") if err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } if err := netlink.NetworkLinkUp(iface); err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } } if args.gateway != "" { gw := net.ParseIP(args.gateway) if gw == nil { return fmt.Errorf("Unable to set up networking, %s is not a valid gateway IP", args.gateway) } if err := netlink.AddDefaultGw(gw); err != nil { return fmt.Errorf("Unable to set up networking: %v", err) } } return nil }