public void Start() { #region 启动系统性能计数器统计 try { NetFlow.Start(); NetFlow.DataMonitorEvent += DataMonitorEvent; _IsNetFlowRun = true; } catch { } #endregion #region 启动Socket包统计 if (PermissionTool.IsAdmin()) { List <IPAddress> hosts = NetCardInfoTool.GetIPv4Address(); AllIPv4Address = NetCardInfoTool.GetAllIPv4Address(); foreach (var host in hosts) { try { NetPacketTool p = new NetPacketTool(host); p.NewPacket += new NewPacketEventHandler(NewPacketEvent); p.Start(); NetPacketList.Add(p); } catch { } } if (ListTool.HasElements(NetPacketList)) { _IsNetPacketRun = true; } } #endregion }
private bool Init() { _Instances = NetCardInfoTool.GetInstanceNames(); if (ListTool.HasElements(_Instances)) { UploadCounter = new List <PerformanceCounter>(); DownloadCounter = new List <PerformanceCounter>(); for (int i = 0; i < _Instances.Count(); i++) { try { // 添加 上行流量计数器 UploadCounter.Add(new PerformanceCounter("Network Interface", "Bytes Sent/sec", _Instances[i])); } catch { } try { // 添加 下行流量计数器 DownloadCounter.Add(new PerformanceCounter("Network Interface", "Bytes Received/sec", _Instances[i])); } catch { } } } if (ListTool.HasElements(UploadCounter) && ListTool.HasElements(DownloadCounter)) { return(true); } return(false); }
private void BtnLoad_Click(object sender, EventArgs e) { List <string> list111 = NetcardControlTool.GetList(); MacList = NetCardInfoTool.GetNetworkCardInfo(); if (Ls.Ok(MacList)) { LbxNetworkList.Items.Clear(); foreach (var item in MacList) { LbxNetworkList.Items.Add(item.Item2); } } }
private void TestForm_Load(object sender, EventArgs e) { nft.Start(); nft.DataMonitorEvent += DataMonitorEvent; List <IPAddress> hosts = NetCardInfoTool.GetIPv4Address(); foreach (var host in hosts) { NetPacketTool p = new NetPacketTool(host); p.NewPacket += new NewPacketEventHandler(OnNewPacket); p.Start(); npt.Add(p); } }
private void CheckRestart() { bool rest = false; string[] ints = NetCardInfoTool.GetInstanceNames(); if (ListTool.IsNullOrEmpty(NetFlow.Instances) && ListTool.HasElements(ints)) { rest = true; } if (ListTool.HasElements(NetFlow.Instances) && ListTool.HasElements(ints) && string.Join("-", NetFlow.Instances) != string.Join("-", ints)) { rest = true; } if (rest) { //重启 系统性能计数器 NetFlow.Restart(); //重启 抓包监听 List <IPAddress> hosts = NetCardInfoTool.GetIPv4Address(); AllIPv4Address = NetCardInfoTool.GetAllIPv4Address(); foreach (var host in hosts) { try { if (!NetPacketList.Any(x => x.IP.ToString() == host.ToString())) { NetPacketTool p = new NetPacketTool(host); p.NewPacket += new NewPacketEventHandler(NewPacketEvent); p.Start(); NetPacketList.Add(p); } } catch { } } } }
public static void StartNetCapture() { int span = 0; if (!NetCaptureRun) { NetCaptureRun = true; Task.Factory.StartNew(() => { //获取实时数据包 #region 设置IP var networkInfo = NetCardInfoTool.GetNetworkCardInfo(); if (!ListTool.IsNullOrEmpty(networkInfo)) { IP = networkInfo[0].Item3; } #endregion GetNetBag(); GetNetProcess();//获取联网进程 while (NetCaptureLoop) { //if (span >= 1) //{ // GetNetProcess();//获取联网进程 // span = 0; //} Thread.Sleep(1000); CalcBagFlow();//计算进程流量 span++; } NS.IsStart = false; NetCaptureRun = false; }); } }
/// <summary> /// 网卡信息 /// 【名称、描述、物理地址(Mac)、Ip地址、网关地址】 /// </summary> /// <returns></returns> public static List <Tuple <string, string, string, string, string> > NetworkCardInfo() { return(NetCardInfoTool.GetNetworkCardInfo()); }
private void BtnTest_Click(object sender, EventArgs e) { Task.Factory.StartNew(() => { try { string manage = "SELECT * From Win32_NetworkAdapter"; ManagementObjectSearcher searcher = new ManagementObjectSearcher(manage); ManagementObjectCollection collection = searcher.Get(); foreach (ManagementObject obj in collection) { foreach (var item in obj.Properties) { log.i(" ::: " + item.Name + " ::: " + item.Value); } log.i("=============================="); log.i("=============================="); } } catch { } //==================================== log.v("STEP 1:获取网卡列表"); var list = NetCardInfoTool.GetNetworkCardInfoId(); if (Ls.ok(list)) { foreach (var item in list) { log.v($"{item.Item1} | {item.Item2} | {item.Item3} | {item.Item4} | {item.Item5}"); } } //==================================== log.v("STEP 2:检查网卡状态"); if (Ls.ok(list)) { foreach (var item in list) { var status = NetCardInfoTool.GetOpStatus(item.Item3); log.v($"{item.Item1} | {item.Item2} | {item.Item3} | {status.ToString()}"); } } //==================================== log.v("STEP 3:Ping 10.49.129.7"); bool pingflag1 = PingTool.Ping("10.49.129.7"); if (pingflag1) { log.v("Ping 正常"); } else { log.v("Ping 异常"); } //==================================== log.v("STEP 4:禁用网卡"); NetConLibTool.Disconnect(); //if (Ls.ok(list)) //{ // foreach (var item in list) // { // ManagementObject network = NetcardControlTool.GetNetWorkByConnectId(item.Item1); // if (network != null) // { // bool disflag = NetcardControlTool.Disable(network); // log.v($"{item.Item1} | {item.Item2} | {item.Item3} | 禁用: {(disflag ? "成功" : "失败")}"); // } // } //} //==================================== log.v("STEP 5:检查网卡状态"); if (Ls.ok(list)) { foreach (var item in list) { var status = NetCardInfoTool.GetOpStatus(item.Item3); log.v($"{item.Item1} | {item.Item2} | {item.Item3} | {status.ToString()}"); } } //==================================== log.v("STEP 6:Ping 10.49.129.7"); bool pingflag2 = PingTool.Ping("10.49.129.7"); if (pingflag2) { log.v("Ping 正常"); } else { log.v("Ping 异常"); } //==================================== log.v("STEP 7:遍历启用网卡"); NetConLibTool.Connect(); //if (Ls.ok(list)) //{ // foreach (var item in list) // { // ManagementObject network = NetcardControlTool.GetNetWorkByConnectId(item.Item1); // if (network != null) // { // bool disflag = NetcardControlTool.Enable(network); // log.v($"{item.Item1} | {item.Item2} | {item.Item3} | 启用: {(disflag ? "成功" : "失败")}"); // } // } //} //==================================== log.v("STEP 8:等待一下"); Sleep.S(20); //==================================== log.v("STEP 9:检查网卡状态"); if (Ls.ok(list)) { foreach (var item in list) { var status = NetCardInfoTool.GetOpStatus(item.Item3); log.v($"{item.Item1} | {item.Item2} | {item.Item3} | {status.ToString()}"); } } //==================================== log.v("STEP 10:Ping 10.49.129.7"); bool pingflag3 = PingTool.Ping("10.49.129.7"); if (pingflag3) { log.v("Ping 正常"); } else { log.v("Ping 异常"); } //==================================== SetResult("测试结束,已生成测试报告"); }); }