diff --git a/internal/router/client_info.go b/internal/router/client_info.go index 1548c67..97446c0 100644 --- a/internal/router/client_info.go +++ b/internal/router/client_info.go @@ -105,7 +105,7 @@ func dnsmasqReadClientInfoReader(reader io.Reader) error { r := routerPlatform.Load() return lineread.Reader(reader, func(line []byte) error { fields := bytes.Fields(line) - if len(fields) != 5 { + if len(fields) < 4 { return nil } mac := string(fields[1]) diff --git a/internal/router/client_info_test.go b/internal/router/client_info_test.go index 5ea8b65..fac801c 100644 --- a/internal/router/client_info_test.go +++ b/internal/router/client_info_test.go @@ -78,6 +78,12 @@ lease 192.168.1.2 { iscDHCPReadClientInfoReader, "00:00:00:00:00:02", }, + { + "", + `1685794060 00:00:00:00:00:04 192.168.0.209 cuonglm-ThinkPad-X1-Carbon-Gen-9 00:00:00:00:00:04 9`, + dnsmasqReadClientInfoReader, + "00:00:00:00:00:04", + }, } for _, tc := range tests {