2022-04-29 09:19:49 +08:00
2015-02-06 20:43:52 +08:00
2014-11-08 20:30:26 -06:00
2014-07-04 15:24:14 +08:00
2014-11-08 20:30:26 -06:00
2014-11-08 20:30:26 -06:00
2014-11-08 20:30:26 -06:00
2014-11-08 20:30:26 -06:00
2022-04-29 09:19:49 +08:00
2022-04-29 09:19:49 +08:00
2014-06-26 19:57:22 +08:00
2015-02-01 18:08:45 +08:00
2014-11-08 20:30:26 -06:00
2014-11-08 20:30:26 -06:00

upnp protocol

====

A simple implements UPnP protocol for Golang library. Add port mapping for NAT devices.

在内网中搜索网关设备检查网关是否支持upnp协议若支持添加端口映射。

====

example:

1. add a port mapping

mapping := new(upnp.Upnp)
if err := mapping.AddPortMapping(55789, 55789, "TCP"); err == nil {
	fmt.Println("success !")
	// remove port mapping in gatway
	mapping.Reclaim()
} else {
	fmt.Println("fail !")
}

2. search gateway device.

upnpMan := new(upnp.Upnp)
err := upnpMan.SearchGateway()
if err != nil {
	fmt.Println(err.Error())
} else {
	fmt.Println("local ip address: ", upnpMan.LocalHost)
	fmt.Println("gateway ip address: ", upnpMan.Gateway.Host)
}

3. get an internet ip address in gatway.

upnpMan := new(upnp.Upnp)
err := upnpMan.ExternalIPAddr()
if err != nil {
	fmt.Println(err.Error())
} else {
	fmt.Println("internet ip address: ", upnpMan.GatewayOutsideIP)
}
Description
A simple implements UPnP protocol for Go(Golang) library. Add port mapping for NAT devices. 在内网中搜索网关设备,检查网关是否支持upnp协议,若支持,添加端口映射。
Readme 1.8 MiB
Languages
Go 100%