.Net FrameWork中的網絡操作
生活随笔
收集整理的這篇文章主要介紹了
.Net FrameWork中的網絡操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Code
/*
?*?Created?by?SharpDevelop.
?*?User:?Administrator
?*?Date:?2008/9/11
?*?Time:?下午?03:51
?*?
?*/
using?System;
using?System.Net;
class?Test
{
????private?static?string?getIPAddress()
????{
????????System.Net.IPAddress?addr;
????????addr=new?System.Net.IPAddress(Dns.GetHostByName(Dns.GetHostName()).AddressList[0].Address);
????????return?addr.ToString();
????}
????static?void?Main()
????{
????????
????????Console.WriteLine(System.Net.Dns.GetHostName());
????????Console.WriteLine(getIPAddress());
????}
}
using?System;
using?System.Net;
using?System.Net.Sockets;
using?System.Text.RegularExpressions;
namespace?Mssc.Services.ConnectionManagement
{
??class?TestIPAddress?
??{
????/**
??????*?The?IPAddresses?method?obtains?the?selected?server?IP?address?information.
??????*?It?then?displays?the?type?of?address?family?supported?by?the?server?and?its?
??????*?IP?address?in?standard?and?byte?format.
??????**/
????private?static?void?IPAddresses(string?server)?
????{
??????try?
??????{
????????System.Text.ASCIIEncoding?ASCII?=?new?System.Text.ASCIIEncoding();
????????//?Get?server?related?information.
????????IPHostEntry?heserver?=?Dns.GetHostEntry(server);
????????//?Loop?on?the?AddressList
????????foreach?(IPAddress?curAdd?in?heserver.AddressList)?
????????{
??????????//?Display?the?type?of?address?family?supported?by?the?server.?If?the
??????????//?server?is?IPv6-enabled?this?value?is:?InternNetworkV6.?If?the?server
??????????//?is?also?IPv4-enabled?there?will?be?an?additional?value?of?InterNetwork.
??????????Console.WriteLine("AddressFamily:?"?+?curAdd.AddressFamily.ToString());
??????????//?Display?the?ScopeId?property?in?case?of?IPV6?addresses.
??????????if(curAdd.AddressFamily.ToString()?==?ProtocolFamily.InterNetworkV6.ToString())
????????????Console.WriteLine("Scope?Id:?"?+?curAdd.ScopeId.ToString());
??????????//?Display?the?server?IP?address?in?the?standard?format.?In?
??????????//?IPv4?the?format?will?be?dotted-quad?notation,?in?IPv6?it?will?be
??????????//?in?in?colon-hexadecimal?notation.
??????????Console.WriteLine("Address:?"?+?curAdd.ToString());
??????????//?Display?the?server?IP?address?in?byte?format.
??????????Console.Write("AddressBytes:?");
??????????Byte[]?bytes?=?curAdd.GetAddressBytes();
??????????for?(int?i?=?0;?i?<?bytes.Length;?i++)?
??????????{
????????????Console.Write(bytes[i]);
??????????}??????????????????????????
??????????Console.WriteLine("\r\n");
????????}
??????}
??????catch?(Exception?e)?
??????{
????????Console.WriteLine("[DoResolve]?Exception:?"?+?e.ToString());
??????}
????}
????//?This?IPAddressAdditionalInfo?displays?additional?server?address?information.
????private?static?void?IPAddressAdditionalInfo()?
????{
??????try?
??????{
????????//?Display?the?flags?that?show?if?the?server?supports?IPv4?or?IPv6
????????//?address?schemas.
????????Console.WriteLine("\r\nSupportsIPv4:?"?+?Socket.SupportsIPv4);
????????Console.WriteLine("SupportsIPv6:?"?+?Socket.SupportsIPv6);
????????if?(Socket.SupportsIPv6)
????????{
??????????//?Display?the?server?Any?address.?This?IP?address?indicates?that?the?server?
??????????//?should?listen?for?client?activity?on?all?network?interfaces.?
??????????Console.WriteLine("\r\nIPv6Any:?"?+?IPAddress.IPv6Any.ToString());
??????????//?Display?the?server?loopback?address.?
??????????Console.WriteLine("IPv6Loopback:?"?+?IPAddress.IPv6Loopback.ToString());
??????????//?Used?during?autoconfiguration?first?phase.
??????????Console.WriteLine("IPv6None:?"?+?IPAddress.IPv6None.ToString());
??????????Console.WriteLine("IsLoopback(IPv6Loopback):?"?+?IPAddress.IsLoopback(IPAddress.IPv6Loopback));
????????}
????????Console.WriteLine("IsLoopback(Loopback):?"?+?IPAddress.IsLoopback(IPAddress.Loopback));
??????}
??????catch?(Exception?e)?
??????{
????????Console.WriteLine("[IPAddresses]?Exception:?"?+?e.ToString());
??????}
????}
????public?static?void?Main(string[]?args)?
????{
??????string?server?=?null;
??????//?Define?a?regular?expression?to?parse?user's?input.
??????//?This?is?a?security?check.?It?allows?only
??????//?alphanumeric?input?string?between?2?to?40?character?long.
??????Regex?rex?=?new?Regex(@"^[a-zA-Z]\w{1,39}$");
??????if?(args.Length?<?1)
??????{
????????//?If?no?server?name?is?passed?as?an?argument?to?this?program,?use?the?current?
????????//?server?name?as?default.
????????server?=?Dns.GetHostName();
????????Console.WriteLine("Using?current?host:?"?+?server);
??????}
??????else
??????{
????????server?=?args[0];
????????if?(!(rex.Match(server)).Success)
????????{
??????????Console.WriteLine("Input?string?format?not?allowed.");
??????????return;
????????}
??????}
??????//?Get?the?list?of?the?addresses?associated?with?the?requested?server.
??????IPAddresses(server);
??????//?Get?additonal?address?information.
??????IPAddressAdditionalInfo();
????}
??}
}
/*
?*?Created?by?SharpDevelop.
?*?User:?Administrator
?*?Date:?2008/9/11
?*?Time:?下午?03:51
?*?
?*/
using?System;
using?System.Net;
class?Test
{
????private?static?string?getIPAddress()
????{
????????System.Net.IPAddress?addr;
????????addr=new?System.Net.IPAddress(Dns.GetHostByName(Dns.GetHostName()).AddressList[0].Address);
????????return?addr.ToString();
????}
????static?void?Main()
????{
????????
????????Console.WriteLine(System.Net.Dns.GetHostName());
????????Console.WriteLine(getIPAddress());
????}
}
using?System;
using?System.Net;
using?System.Net.Sockets;
using?System.Text.RegularExpressions;
namespace?Mssc.Services.ConnectionManagement
{
??class?TestIPAddress?
??{
????/**
??????*?The?IPAddresses?method?obtains?the?selected?server?IP?address?information.
??????*?It?then?displays?the?type?of?address?family?supported?by?the?server?and?its?
??????*?IP?address?in?standard?and?byte?format.
??????**/
????private?static?void?IPAddresses(string?server)?
????{
??????try?
??????{
????????System.Text.ASCIIEncoding?ASCII?=?new?System.Text.ASCIIEncoding();
????????//?Get?server?related?information.
????????IPHostEntry?heserver?=?Dns.GetHostEntry(server);
????????//?Loop?on?the?AddressList
????????foreach?(IPAddress?curAdd?in?heserver.AddressList)?
????????{
??????????//?Display?the?type?of?address?family?supported?by?the?server.?If?the
??????????//?server?is?IPv6-enabled?this?value?is:?InternNetworkV6.?If?the?server
??????????//?is?also?IPv4-enabled?there?will?be?an?additional?value?of?InterNetwork.
??????????Console.WriteLine("AddressFamily:?"?+?curAdd.AddressFamily.ToString());
??????????//?Display?the?ScopeId?property?in?case?of?IPV6?addresses.
??????????if(curAdd.AddressFamily.ToString()?==?ProtocolFamily.InterNetworkV6.ToString())
????????????Console.WriteLine("Scope?Id:?"?+?curAdd.ScopeId.ToString());
??????????//?Display?the?server?IP?address?in?the?standard?format.?In?
??????????//?IPv4?the?format?will?be?dotted-quad?notation,?in?IPv6?it?will?be
??????????//?in?in?colon-hexadecimal?notation.
??????????Console.WriteLine("Address:?"?+?curAdd.ToString());
??????????//?Display?the?server?IP?address?in?byte?format.
??????????Console.Write("AddressBytes:?");
??????????Byte[]?bytes?=?curAdd.GetAddressBytes();
??????????for?(int?i?=?0;?i?<?bytes.Length;?i++)?
??????????{
????????????Console.Write(bytes[i]);
??????????}??????????????????????????
??????????Console.WriteLine("\r\n");
????????}
??????}
??????catch?(Exception?e)?
??????{
????????Console.WriteLine("[DoResolve]?Exception:?"?+?e.ToString());
??????}
????}
????//?This?IPAddressAdditionalInfo?displays?additional?server?address?information.
????private?static?void?IPAddressAdditionalInfo()?
????{
??????try?
??????{
????????//?Display?the?flags?that?show?if?the?server?supports?IPv4?or?IPv6
????????//?address?schemas.
????????Console.WriteLine("\r\nSupportsIPv4:?"?+?Socket.SupportsIPv4);
????????Console.WriteLine("SupportsIPv6:?"?+?Socket.SupportsIPv6);
????????if?(Socket.SupportsIPv6)
????????{
??????????//?Display?the?server?Any?address.?This?IP?address?indicates?that?the?server?
??????????//?should?listen?for?client?activity?on?all?network?interfaces.?
??????????Console.WriteLine("\r\nIPv6Any:?"?+?IPAddress.IPv6Any.ToString());
??????????//?Display?the?server?loopback?address.?
??????????Console.WriteLine("IPv6Loopback:?"?+?IPAddress.IPv6Loopback.ToString());
??????????//?Used?during?autoconfiguration?first?phase.
??????????Console.WriteLine("IPv6None:?"?+?IPAddress.IPv6None.ToString());
??????????Console.WriteLine("IsLoopback(IPv6Loopback):?"?+?IPAddress.IsLoopback(IPAddress.IPv6Loopback));
????????}
????????Console.WriteLine("IsLoopback(Loopback):?"?+?IPAddress.IsLoopback(IPAddress.Loopback));
??????}
??????catch?(Exception?e)?
??????{
????????Console.WriteLine("[IPAddresses]?Exception:?"?+?e.ToString());
??????}
????}
????public?static?void?Main(string[]?args)?
????{
??????string?server?=?null;
??????//?Define?a?regular?expression?to?parse?user's?input.
??????//?This?is?a?security?check.?It?allows?only
??????//?alphanumeric?input?string?between?2?to?40?character?long.
??????Regex?rex?=?new?Regex(@"^[a-zA-Z]\w{1,39}$");
??????if?(args.Length?<?1)
??????{
????????//?If?no?server?name?is?passed?as?an?argument?to?this?program,?use?the?current?
????????//?server?name?as?default.
????????server?=?Dns.GetHostName();
????????Console.WriteLine("Using?current?host:?"?+?server);
??????}
??????else
??????{
????????server?=?args[0];
????????if?(!(rex.Match(server)).Success)
????????{
??????????Console.WriteLine("Input?string?format?not?allowed.");
??????????return;
????????}
??????}
??????//?Get?the?list?of?the?addresses?associated?with?the?requested?server.
??????IPAddresses(server);
??????//?Get?additonal?address?information.
??????IPAddressAdditionalInfo();
????}
??}
}
轉載于:https://www.cnblogs.com/Athrun/archive/2008/09/11/1289308.html
總結
以上是生活随笔為你收集整理的.Net FrameWork中的網絡操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DNS 服务器地址大全
- 下一篇: 如何在一个站点里使用两个Web.site