Update WebRTC server operation in closed docker containers

This commit is contained in:
Alex X
2025-02-27 14:30:56 +03:00
parent 858c04bacf
commit 934d43b525
5 changed files with 58 additions and 35 deletions
+6
View File
@@ -7,6 +7,7 @@ import (
"github.com/AlexxIT/go2rtc/internal/api/ws"
"github.com/AlexxIT/go2rtc/pkg/core"
"github.com/AlexxIT/go2rtc/pkg/webrtc"
"github.com/AlexxIT/go2rtc/pkg/xnet"
pion "github.com/pion/webrtc/v3"
)
@@ -73,6 +74,11 @@ func FilterCandidate(candidate *pion.ICECandidate) bool {
return false
}
// remove any Docker-like IP from candidates
if ip := net.ParseIP(candidate.Address); ip != nil && xnet.Docker.Contains(ip) {
return false
}
// host candidate should be in the hosts list
if candidate.Typ == pion.ICECandidateTypeHost && filters.Candidates != nil {
if !core.Contains(filters.Candidates, candidate.Address) {
+1 -1
View File
@@ -24,7 +24,7 @@ func Init() {
} `yaml:"webrtc"`
}
cfg.Mod.Listen = ":8555/tcp"
cfg.Mod.Listen = ":8555"
cfg.Mod.IceServers = []pion.ICEServer{
{URLs: []string{"stun:stun.l.google.com:19302"}},
}