This commit is contained in:
esrrhs 2018-12-22 18:20:58 +08:00
parent 1ec83ad73d
commit a442584b89
2 changed files with 3 additions and 8 deletions

View File

@ -9,7 +9,7 @@ import (
"time" "time"
) )
func NewClient(addr string, server string, target string, timeout int, sproto int, rproto int, hb int) (*Client, error) { func NewClient(addr string, server string, target string, timeout int, sproto int, rproto int) (*Client, error) {
ipaddr, err := net.ResolveUDPAddr("udp", addr) ipaddr, err := net.ResolveUDPAddr("udp", addr)
if err != nil { if err != nil {
@ -32,7 +32,6 @@ func NewClient(addr string, server string, target string, timeout int, sproto in
timeout: timeout, timeout: timeout,
sproto: sproto, sproto: sproto,
rproto: rproto, rproto: rproto,
hb: hb,
}, nil }, nil
} }
@ -43,7 +42,6 @@ type Client struct {
timeout int timeout int
sproto int sproto int
rproto int rproto int
hb int
ipaddr *net.UDPAddr ipaddr *net.UDPAddr
addr string addr string
@ -237,7 +235,7 @@ func (p *Client) checkTimeoutConn() {
} }
func (p *Client) ping() { func (p *Client) ping() {
if p.sendPacket == 0 && p.recvPacket == 0 { if p.sendPacket == 0 {
now := time.Now() now := time.Now()
b, _ := now.MarshalBinary() b, _ := now.MarshalBinary()
sendICMP(p.id, p.sequence, *p.conn, p.ipaddrServer, p.targetAddr, "", (uint32)(PING), b, p.sproto, p.rproto) sendICMP(p.id, p.sequence, *p.conn, p.ipaddrServer, p.targetAddr, "", (uint32)(PING), b, p.sproto, p.rproto)

View File

@ -36,8 +36,6 @@ Usage:
-rproto 客户端接收ping协议的协议默认是0 -rproto 客户端接收ping协议的协议默认是0
The protocol that the client receives the ping. The default is 0. The protocol that the client receives the ping. The default is 0.
-hb 客户端自动保持每秒发到服务器的心跳包用于在某些网络下更新服务器的id和seq以接收到服务器的reply默认0关闭
` `
func main() { func main() {
@ -49,7 +47,6 @@ func main() {
timeout := flag.Int("timeout", 60, "conn timeout") timeout := flag.Int("timeout", 60, "conn timeout")
sproto := flag.Int("sproto", 8, "send ping proto") sproto := flag.Int("sproto", 8, "send ping proto")
rproto := flag.Int("rproto", 0, "recv ping proto") rproto := flag.Int("rproto", 0, "recv ping proto")
hb := flag.Int("hb", 0, "client heartbeat")
flag.Usage = func() { flag.Usage = func() {
fmt.Printf(usage) fmt.Printf(usage)
} }
@ -79,7 +76,7 @@ func main() {
fmt.Printf("server %s\n", *server) fmt.Printf("server %s\n", *server)
fmt.Printf("target %s\n", *target) fmt.Printf("target %s\n", *target)
c, err := pingtunnel.NewClient(*listen, *server, *target, *timeout, *sproto, *rproto, *hb) c, err := pingtunnel.NewClient(*listen, *server, *target, *timeout, *sproto, *rproto)
if err != nil { if err != nil {
fmt.Printf("ERROR: %s\n", err.Error()) fmt.Printf("ERROR: %s\n", err.Error())
return return