C# 选择特定的网卡

一般自己做tcp通信项目时,最简单的都是局域网通信。
有时候一台电脑有多张网卡,分别接入不同的局域网(如局域网1是做内部监控的,局域网2是在线获取数据的),那么本机上运行的监控程序就应该指定局域网卡1。

using System.Net.NetworkInformation;  

cNetWorkInfo是自己定义的一个class,用于存储网卡信息及其对应的IP地址。

public static cNetWorkInfo[] GetNetWorkInfo()
        {
            List<cNetWorkInfo> netWorkList = new List<cNetWorkInfo>();
            NetworkInterface[] NetworkInterfaces = NetworkInterface.GetAllNetworkInterfaces();  //获取所有的网络接口
            foreach (NetworkInterface NetworkIntf in NetworkInterfaces)                         //针对每张网卡
            {
                IPInterfaceProperties IPInterfaceProperties = NetworkIntf.GetIPProperties();    //获取描述此网络接口的配置的对象
                UnicastIPAddressInformationCollection UnicastIPAddressInformationCollection = IPInterfaceProperties.UnicastAddresses;//获取分配给此接口的单播地址
                foreach (UnicastIPAddressInformation UnicastIPAddressInformation in UnicastIPAddressInformationCollection) //针对每个IP
                {
                    if (UnicastIPAddressInformation.Address.AddressFamily == AddressFamily.InterNetwork)//IPv4
                    {
                        string IP = UnicastIPAddressInformation.Address.ToString();
                        if (IP != "127.0.0.1")//不是本地IP
                        {
                            if (NetworkIntf.OperationalStatus == OperationalStatus.Up)//网卡已连接
                            {
                                cNetWorkInfo info = new cNetWorkInfo();
                                info.mIp = IP;
                                info.mDiscription = NetworkIntf.Description;
                                netWorkList.Add(info);
                            }
                        }
                    }
                }
            }
            return netWorkList.ToArray();
        }

在这里插入图片描述
可以看到已连接的一共有三张网卡,其中两张是vmware的虚拟网卡,第三张才是正常使用的无线网卡。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值