zhangzengfei
2021-04-02 f455f4ffec96c5838de6f10b7b2959c860485be1
machine.go
@@ -1,6 +1,7 @@
package licence
import (
   "os/exec"
   "sort"
   "strconv"
   "strings"
@@ -38,16 +39,25 @@
   }*/
   // Net
   if net, err := psnet.Interfaces(); err == nil {
      for _, n := range net {
         if n.MTU == 1500 && !VNetFilter(&n) {
            machineInfo = append(machineInfo, "mac:"+n.HardwareAddr)
      // 获取虚拟网卡
      cmd := exec.Command("/bin/sh", "-c", "ls /sys/devices/virtual/net/")
      cmdResult, _ := cmd.Output()
      vNets := string(cmdResult)
      for _, iface := range net {
         // 排除lo, 和虚拟接口
         if iface.MTU == 1500 && !VNetFilter(&iface) && !strings.Contains(vNets, iface.Name) {
            machineInfo = append(machineInfo, "mac:"+iface.HardwareAddr)
         }
      }
   }
   sort.Strings(machineInfo)
   // fmt.Println("machineInfo", machineInfo)
   return GetMd5String(strings.Join(machineInfo, "-|-"), true, false)
}
@@ -62,6 +72,7 @@
      "veth",
      "Npcap",
      "VirtualBox",
      "dummy",
   }
   for _, v := range vNetNamePrefix {