From 66d5778df3f4ebf0ef2cd5882856a374bae44a21 Mon Sep 17 00:00:00 2001 From: fumiama Date: Thu, 30 Dec 2021 16:11:30 +0800 Subject: [PATCH] add more logs --- gold/link/listen.go | 18 +++++++++++++----- gold/link/nat.go | 8 ++++++-- lower/nic.go | 5 ++++- 3 files changed, 23 insertions(+), 8 deletions(-) diff --git a/gold/link/listen.go b/gold/link/listen.go index 6d8e670..61e0f90 100644 --- a/gold/link/listen.go +++ b/gold/link/listen.go @@ -46,9 +46,13 @@ func (m *Me) listen() (conn *net.UDPConn, err error) { case head.ProtoHello: switch p.status { case LINK_STATUS_DOWN: - _, _ = p.Write(head.NewPacket(head.ProtoHello, 0, p.peerip, 0, nil), false) - logrus.Infoln("[link] send hello ack packet") - p.status = LINK_STATUS_HALFUP + n, err = p.Write(head.NewPacket(head.ProtoHello, 0, p.peerip, 0, nil), false) + if err == nil { + logrus.Infoln("[link] send", n, "bytes hello ack packet") + p.status = LINK_STATUS_HALFUP + } else { + logrus.Errorln("[link] send hello ack packet error:", err) + } case LINK_STATUS_HALFUP: p.status = LINK_STATUS_UP case LINK_STATUS_UP: @@ -77,8 +81,12 @@ func (m *Me) listen() (conn *net.UDPConn, err error) { } else if p.Accept(packet.Dst) { if p.allowtrans { // 转发 - p.Write(&packet, true) - logrus.Infoln("[link] trans packet to", packet.Dst.String()+":"+strconv.Itoa(int(packet.DstPort))) + n, err = p.Write(&packet, true) + if err == nil { + logrus.Infoln("[link] trans", n, "bytes packet to", packet.Dst.String()+":"+strconv.Itoa(int(packet.DstPort))) + } else { + logrus.Errorln("[link] trans packet to", packet.Dst.String()+":"+strconv.Itoa(int(packet.DstPort)), "err:", err) + } } else { logrus.Warnln("[link] refused to trans packet to", packet.Dst.String()+":"+strconv.Itoa(int(packet.DstPort))) } diff --git a/gold/link/nat.go b/gold/link/nat.go index 23065c1..eeaaced 100644 --- a/gold/link/nat.go +++ b/gold/link/nat.go @@ -15,8 +15,12 @@ func (l *Link) keepAlive() { go func() { t := time.NewTicker(time.Second * time.Duration(l.keepalive)) for range t.C { - _, _ = l.Write(head.NewPacket(head.ProtoHello, 0, l.peerip, 0, nil), false) - logrus.Infoln("[link.nat] send keep alive packet") + n, err := l.Write(head.NewPacket(head.ProtoHello, 0, l.peerip, 0, nil), false) + if err == nil { + logrus.Infoln("[link] send", n, "bytes keep alive packet") + } else { + logrus.Errorln("[link] send keep alive packet error:", err) + } } }() logrus.Infoln("[link.nat] start to keep alive") diff --git a/lower/nic.go b/lower/nic.go index ed76e1b..07b3fe7 100644 --- a/lower/nic.go +++ b/lower/nic.go @@ -79,7 +79,10 @@ func (nc *NIC) Start(m *link.Me) { logrus.Warnln("[lower] connect to peer", dst.String(), "err:", err) continue } - lnk.Write(head.NewPacket(head.ProtoData, srcport, dst, dstport, packet), false) + _, err = lnk.Write(head.NewPacket(head.ProtoData, srcport, dst, dstport, packet), false) + if err != nil { + logrus.Warnln("[lower] write to peer", dst.String(), "err:", err) + } } }