19 lines
346 B
Go
19 lines
346 B
Go
package gateway
|
|
|
|
import (
|
|
"net"
|
|
"os/exec"
|
|
"syscall"
|
|
)
|
|
|
|
func DiscoverGateway() (ip net.IP, err error) {
|
|
routeCmd := exec.Command("route", "print", "0.0.0.0")
|
|
routeCmd.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
|
|
output, err := routeCmd.CombinedOutput()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return parseWindowsRoutePrint(output)
|
|
}
|