diff --git a/waterutil/tap.go b/waterutil/tap.go index d81da37..5ad78fd 100644 --- a/waterutil/tap.go +++ b/waterutil/tap.go @@ -38,3 +38,11 @@ func MACEthertype(macFrame []byte) Ethertype { func MACPayload(macFrame []byte) []byte { return macFrame[12+MACTagging(macFrame)+2:] } + +func IsBroadcast(addr net.HardwareAddr) bool { + return addr[0] == 0xff && addr[1] == 0xff && addr[2] == 0xff && addr[3] == 0xff && addr[4] == 0xff && addr[5] == 0xff +} + +func IsIPv4Multicast(addr net.HardwareAddr) bool { + return addr[0] == 0x01 && addr[1] == 0x00 && addr[2] == 0x5e +}