diff options
| author | Handingkang <[email protected]> | 2023-10-13 15:06:32 +0800 |
|---|---|---|
| committer | Handingkang <[email protected]> | 2023-10-13 15:06:32 +0800 |
| commit | 13d850343d93275193f411a08ddc899deb802de0 (patch) | |
| tree | 6b288a86f7e41375bc1b26869b9d148e533a7336 | |
| parent | 167539a7caf3eada8348007b08db2203a1d6852d (diff) | |
bug 修复
| -rw-r--r-- | Dockerfile | 2 | ||||
| -rw-r--r-- | Ohmyfile | 2 | ||||
| -rw-r--r-- | plugin/v64dns/analyze/analyze.go | 13 | ||||
| -rw-r--r-- | plugin/v64dns/analyze/pb/requirements.txt | bin | 420 -> 88 bytes | |||
| -rw-r--r-- | plugin/v64dns/setup.go | 3 | ||||
| -rw-r--r-- | plugin/v64dns/v64dns.go | 4 | ||||
| -rw-r--r-- | plugin/v64dns/v64dns_policy.go | 6 |
7 files changed, 15 insertions, 15 deletions
@@ -27,7 +27,7 @@ COPY plugin/v64dns/analyze/pb/requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt;\ mkdir config;\ mkdir data;\ - ln -s plugin/v64dns/analyze/data data; + ln -s plugin/v64dns/analyze/pb/data data; # 不要使用ENTRYPOINT,否则CMD会被当作参数执行 CMD /bin/bash -c "source ./start.sh" @@ -12,6 +12,6 @@ ip-embed chain-mlen 4 # analyze neo4j http://localhost:7447 neo4j hdk19990815 - analyze neo4j neo4j_s://600c8c12.databases.neo4j.io:7687 neo4j 5PvtszWJ7ru4hyBTKO9mGnavOJETTGhJYQIeC5SzmPQ + analyze neo4j neo4j+s://600c8c12.databases.neo4j.io:7687 neo4j 5PvtszWJ7ru4hyBTKO9mGnavOJETTGhJYQIeC5SzmPQ } }
\ No newline at end of file diff --git a/plugin/v64dns/analyze/analyze.go b/plugin/v64dns/analyze/analyze.go index f8d8e0f..cdeb8ab 100644 --- a/plugin/v64dns/analyze/analyze.go +++ b/plugin/v64dns/analyze/analyze.go @@ -28,8 +28,8 @@ var ( lck sync.Mutex ) -func NewAnalyzer(gtype, guri, guser, gpass string) error { - A = Analyzer{ +func NewAnalyzer(gtype, guri, guser, gpass string) (*Analyzer, error) { + B := Analyzer{ Graphtype: gtype, Graphuri: guri, GraphUser: guser, @@ -37,13 +37,13 @@ func NewAnalyzer(gtype, guri, guser, gpass string) error { IsA: true, grpcClient: nil, } - conn, err := A.GetConn("127.0.0.1:56789") + conn, err := B.GetConn("127.0.0.1:56789") if err != nil { olog.Errorf("GetGrpcClient:%s", err.Error()) panic("error") } - A.grpcClient = pb.NewGrpcServiceClient(conn) - return nil + B.grpcClient = pb.NewGrpcServiceClient(conn) + return &B, nil } func (a Analyzer) GetConn(target string) (*grpc.ClientConn, error) { @@ -78,7 +78,6 @@ func newGrpcConn(target string) (*grpc.ClientConn, error) { // 远程调用Python脚本方法 func (a Analyzer) Go2py(i []string) { - // 调用服务端函数 r, err := a.grpcClient.AnalyzeService(context.Background(), &pb.DnsChain{ Gtype: a.Graphtype, @@ -88,10 +87,10 @@ func (a Analyzer) Go2py(i []string) { Data: i, }) if err != nil { + print(r) olog.Errorf("调用解析链分析器代码失败: %s", err) return } - print(r) // 处理不成功则显示警告信息 if r.Res != "success" { olog.Warning(r.Res) diff --git a/plugin/v64dns/analyze/pb/requirements.txt b/plugin/v64dns/analyze/pb/requirements.txt Binary files differindex fa3163f..cc5e89f 100644 --- a/plugin/v64dns/analyze/pb/requirements.txt +++ b/plugin/v64dns/analyze/pb/requirements.txt diff --git a/plugin/v64dns/setup.go b/plugin/v64dns/setup.go index fd27f91..6857c4f 100644 --- a/plugin/v64dns/setup.go +++ b/plugin/v64dns/setup.go @@ -79,10 +79,11 @@ func parseArg(c *caddy.Controller) (*V64dns, error) { log.Error("analyze参数错误,请检查") } //创建Analyzer对象 - err := analyze.NewAnalyzer(args[0], args[1], args[2], args[3]) + a, err := analyze.NewAnalyzer(args[0], args[1], args[2], args[3]) if err != nil { return nil, err } + v.a = a } } break diff --git a/plugin/v64dns/v64dns.go b/plugin/v64dns/v64dns.go index 3458271..bfd7304 100644 --- a/plugin/v64dns/v64dns.go +++ b/plugin/v64dns/v64dns.go @@ -21,8 +21,8 @@ type V64dns struct { ipv6NS string V4NSAddr string V6NSAddr string - p Policy // 生成响应的策略 - a analyze.Analyzer // 分析器配置 + p Policy // 生成响应的策略 + a *analyze.Analyzer // 分析器配置 } // ServeDNS diff --git a/plugin/v64dns/v64dns_policy.go b/plugin/v64dns/v64dns_policy.go index 2aa1871..c6edf02 100644 --- a/plugin/v64dns/v64dns_policy.go +++ b/plugin/v64dns/v64dns_policy.go @@ -109,14 +109,14 @@ func (v V64dns) ResponseCNAME(msg *dns.Msg, state request.Request) *dns.Msg { dSlice := strings.Split(strings.ToLower(qname), ".") if len(dSlice) > 4 { // 将最近一次编码拆分开 - cList := strings.Split(dSlice[len(dSlice)-4], "-") + cList := strings.Split(dSlice[len(dSlice)-5], "-") iaddr := "" // 首部编码如果长度为4则为IPv6地址编码,否则为IPv4的 if len(cList[0]) == 4 { - iaddr = strings.ReplaceAll(dSlice[len(dSlice)-4], "-", ":") + iaddr = strings.ReplaceAll(dSlice[len(dSlice)-5], "-", ":") msg = v.SetAuthAdd(msg, state, 4) } else { - iaddr = strings.ReplaceAll(dSlice[len(dSlice)-4], "-", ".") + iaddr = strings.ReplaceAll(dSlice[len(dSlice)-5], "-", ".") msg = v.SetAuthAdd(msg, state, 6) } iaddr = net.ParseIP(iaddr).String() |
