C# 如何显示IPv4地址而不是IPv6地址
我有这个问题,我写了一个小应用程序来显示计算机的主机名和IP地址 主机名没问题,我现在面临的问题是 在某些Windows 7/8计算机上显示IPv6皱眉|::( 如何强制每次只返回IPv4 这是我的代码:C# 如何显示IPv4地址而不是IPv6地址,c#,ip,show,C#,Ip,Show,我有这个问题,我写了一个小应用程序来显示计算机的主机名和IP地址 主机名没问题,我现在面临的问题是 在某些Windows 7/8计算机上显示IPv6皱眉|::( 如何强制每次只返回IPv4 这是我的代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using Syst
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
namespace IPChecker
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
label1.Text = "Host Computer: " + Dns.GetHostName();
foreach (IPAddress address in Dns.GetHostAddresses(Dns.GetHostName()))
{
label2.Text = "IP Address: " + address;
}
}
}
}
试试这个
声明一个字符串
public static string Ipv4()
{
string ipv4Address = String.Empty;
foreach (IPAddress currentIPAddress in Dns.GetHostAddresses(Dns.GetHostName()))
{
if (currentIPAddress.AddressFamily.ToString() == System.Net.Sockets.AddressFamily.InterNetwork.ToString())
{
ipv4Address = currentIPAddress.ToString();
break;
}
}
return ipv4Address;
}
您是否尝试过使用空主机名 以下MSDN(): 当传递空字符串作为主机名时,此方法将返回除Windows Server 2003之外的所有操作系统的本地主机的IPv4地址;对于Windows Server 2003,将同时返回本地主机的IPv4和IPv6地址
我很抱歉说得离题了,但是这个用户名真的被允许吗?我觉得作为一个黑人我可以使用它?或者如何使用?其他黑人可能仍然会被冒犯,因为这个词在本质上是贬义的。只是一件小事。当我加入我的VPN时,它返回我的VPN IPv4,而不是从局域网返回?你认为呢?我能绕开它吗?对不起,f或者回复太晚。忙着度假。所以你连接到了VPN。仅供参考,许多企业VPN集中器/端点的工作方式与Cisco的类似。在Cisco世界中,默认情况下。在您的情况下,本地LAN连接默认关闭。请尝试。