mirror of
https://github.com/Sagit-chu/flvx.git
synced 2026-10-07 02:06:38 +08:00
修复屏蔽协议引发的udp不通问题
This commit is contained in:
+1
-1
@@ -120,7 +120,7 @@ func main() {
|
|||||||
log := xlogger.NewLogger()
|
log := xlogger.NewLogger()
|
||||||
logger.SetDefault(log)
|
logger.SetDefault(log)
|
||||||
|
|
||||||
wsReporter := socket.StartWebSocketReporterWithConfig(config.Addr, config.Secret, "1.2.1")
|
wsReporter := socket.StartWebSocketReporterWithConfig(config.Addr, config.Secret, "1.2.2")
|
||||||
defer wsReporter.Stop()
|
defer wsReporter.Stop()
|
||||||
service.SetHTTPReportURL(config.Addr, config.Secret)
|
service.SetHTTPReportURL(config.Addr, config.Secret)
|
||||||
|
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ func (r *Router) Dial(ctx context.Context, network, address string) (conn net.Co
|
|||||||
}
|
}
|
||||||
|
|
||||||
if network == "udp" || network == "udp4" || network == "udp6" {
|
if network == "udp" || network == "udp4" || network == "udp6" {
|
||||||
if _, ok := conn.(net.PacketConn); !ok {
|
if _, ok := conn.(net.PacketConn); !ok && conn.RemoteAddr().Network() != "udp" {
|
||||||
return &packetConn{conn}, nil
|
return &packetConn{conn}, nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,7 +101,7 @@ func (h *forwardHandler) Handle(ctx context.Context, conn net.Conn, opts ...hand
|
|||||||
}
|
}
|
||||||
|
|
||||||
network := "tcp"
|
network := "tcp"
|
||||||
if _, ok := conn.(net.PacketConn); ok {
|
if conn.RemoteAddr().Network() == "udp" {
|
||||||
network = "udp"
|
network = "udp"
|
||||||
}
|
}
|
||||||
ro.Network = network
|
ro.Network = network
|
||||||
|
|||||||
@@ -112,7 +112,7 @@ func (h *forwardHandler) Handle(ctx context.Context, conn net.Conn, opts ...hand
|
|||||||
log.Infof("%s <> %s", conn.RemoteAddr(), conn.LocalAddr())
|
log.Infof("%s <> %s", conn.RemoteAddr(), conn.LocalAddr())
|
||||||
|
|
||||||
network := "tcp"
|
network := "tcp"
|
||||||
if _, ok := conn.(net.PacketConn); ok {
|
if conn.RemoteAddr().Network() == "udp" {
|
||||||
network = "udp"
|
network = "udp"
|
||||||
}
|
}
|
||||||
ro.Network = network
|
ro.Network = network
|
||||||
|
|||||||
@@ -460,7 +460,7 @@ func (c *detectConn) Read(b []byte) (int, error) {
|
|||||||
|
|
||||||
func detectProtocol(data []byte, conn net.Conn) (blocked bool) {
|
func detectProtocol(data []byte, conn net.Conn) (blocked bool) {
|
||||||
// 如果是 UDP,则不检测,直接放行
|
// 如果是 UDP,则不检测,直接放行
|
||||||
if _, ok := conn.(*net.UDPConn); ok {
|
if conn.RemoteAddr().Network() == "udp" || conn.RemoteAddr().Network() == "udp4" || conn.RemoteAddr().Network() == "udp6" {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user