Merge pull request #13 from imlonghao/main

feat: 完善本地接口网卡过滤
This commit is contained in:
Akizon
2025-08-01 21:40:39 +08:00
committed by GitHub

View File

@@ -27,10 +27,14 @@ func ConnectionsCount() (tcpCount, udpCount int, err error) {
var ( var (
// 预定义常见的回环和虚拟接口名称 // 预定义常见的回环和虚拟接口名称
loopbackNames = map[string]struct{}{ loopbackNames = map[string]struct{}{
"lo": {}, "lo0": {}, "localhost": {}, "br": {},
"brd0": {}, "docker0": {}, "docker1": {}, "cni": {},
"veth0": {}, "veth1": {}, "veth2": {}, "veth3": {}, "docker": {},
"veth4": {}, "veth5": {}, "veth6": {}, "veth7": {}, "flannel": {},
"lo": {},
"veth": {}, // Docker
"virbr": {}, // KVM
"vmbr": {}, // Proxmox
} }
) )
@@ -296,8 +300,10 @@ func parseNics(nics string) map[string]struct{} {
func shouldInclude(nicName string, includeNics, excludeNics map[string]struct{}) bool { func shouldInclude(nicName string, includeNics, excludeNics map[string]struct{}) bool {
// 默认排除回环接口 // 默认排除回环接口
if _, isLoopback := loopbackNames[nicName]; isLoopback { for loopbackName := range loopbackNames {
return false if strings.HasPrefix(nicName, loopbackName) {
return false
}
} }
// 如果定义了白名单,则只包括白名单中的接口 // 如果定义了白名单,则只包括白名单中的接口