public static void Main() {
String strHostName = string.Empty;
strHostName = Dns.GetHostName();
Console.WriteLine("Local Machine's Host Name: " + strHostName);
IPHostEntry ipEntry = Dns.GetHostEntry(strHostName);
IPAddress[] addr = ipEntry.AddressList;
for (int i = 0; i < addr.Length; i++) {
Console.WriteLine("IP Address {0}: {1} ", i, addr[i].ToString());
Console.WriteLine("\nChecking IP addresses...");
IsLocalIpAddress("localhost");
IsLocalIpAddress("127.0.0.1");
IsLocalIpAddress("MyNotebook");
IsLocalIpAddress("192.168.0.1");
IsLocalIpAddress("99.0.0.1");
public static bool IsLocalIpAddress(string host) {
IPAddress[] hostIPs = Dns.GetHostAddresses(host);
IPAddress[] localIPs = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress hostIP in hostIPs) {
if (IPAddress.IsLoopback(hostIP)) {
foreach (IPAddress localIP in localIPs) {
if (hostIP.Equals(localIP)) {
Console.WriteLine("Error: " + ex.Message);