From 77c4a0cea45d4a86139e97c087ec9a882b8e4ec6 Mon Sep 17 00:00:00 2001 From: cnlh Date: Sun, 23 Feb 2020 01:49:41 +0800 Subject: [PATCH] fix #409, support custom stun server --- cmd/npc/npc.go | 5 ++++- docs/npc_extend.md | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/cmd/npc/npc.go b/cmd/npc/npc.go index 67c12546..3f6050e1 100644 --- a/cmd/npc/npc.go +++ b/cmd/npc/npc.go @@ -35,6 +35,7 @@ var ( logPath = flag.String("log_path", "", "npc log path") debug = flag.Bool("debug", true, "npc debug") pprofAddr = flag.String("pprof", "", "PProf debug addr (ip:port)") + stunAddr = flag.String("stun_addr", "stun.stunprotocol.org:3478", "stun server address (eg:stun.stunprotocol.org:3478)") ) const systemdScript = `[Unit] @@ -130,7 +131,9 @@ func main() { install.UpdateNpc() return case "nat": - nat, host, err := stun.NewClient().Discover() + c := stun.NewClient() + c.SetServerAddr(*stunAddr) + nat, host, err := c.Discover() if err != nil || host == nil { logs.Error("get nat type error", err) return diff --git a/docs/npc_extend.md b/docs/npc_extend.md index ac1c6b28..a325edd3 100644 --- a/docs/npc_extend.md +++ b/docs/npc_extend.md @@ -1,9 +1,9 @@ # 增强功能 ## nat类型检测 ``` - ./npc nat + ./npc nat -stun_addr=stun.stunprotocol.org:3478 ``` -如果p2p双方都是Symmetric Nat,肯定不能成功,其他组合都有较大成功率。 +如果p2p双方都是Symmetric Nat,肯定不能成功,其他组合都有较大成功率。`stun_addr`可以指定stun服务器地址。 ## 状态检查 ``` ./npc status -config=npc配置文件路径