.NET

2011-01-12 2 views
5

में पार्सिंग आईपी पता मेरे पास एक स्ट्रिंग है जो या तो होस्ट नाम (myip.noip.org, आदि) का प्रतिनिधित्व कर सकती है या यह एक सही पता ("127.0.0.1") का प्रतिनिधित्व कर सकती है। System.Net.IPAddress को हल करने का सबसे अच्छा तरीका क्या है?.NET

अग्रिम धन्यवाद।

उत्तर

6

Dns.GetHostAddresses विधि का उपयोग करें। यह दोनों डोमेन नामों और कच्चे आईपी पते मानों को संभाल देगा

IPAddress[] array = DNs.GetHostAddresses(theString); 
1

आईपी पते के लिए IPAddress.Parse विधि का उपयोग करें।

IPAddress address = IPAddress.Parse("127.0.0.1"); 

दूसरों के द्वारा उल्लेख किया है,, दोनों आईपी पतों और होस्ट नामों को हल Dns.GetHostEntry जो उपयोग करने के लिए:

एक IPHostEntry उदाहरण के लिए एक होस्ट नाम या IP पता समाधान करता है।

IPHostEntryAddressList संपत्ति में आईपी पते का संग्रह रखता है।

+0

क्या होस्ट होस्ट का समाधान होगा? – dko

+0

नहीं, यह नहीं होगा। 'डीएनएस' कक्षा का प्रयोग करें। – SLaks

+0

ओपी ने आईपी एड्रेस * या * होस्ट नाम को हल करने के लिए कहा। यह केवल आईपी पते को संभालता है – JaredPar

6

आप किसी आईपी पते या होस्टनाम पर Dns.GetHostEntry पर कॉल कर सकते हैं।
यह आपके लिए रिवर्स लुकअप भी करता है।

यदि आपको रिवर्स लुकअप की आवश्यकता नहीं है, तो आप इसके बजाय Dns.GetHostAddresses पर कॉल कर सकते हैं।

+0

'Dns.Resolve' अब अप्रचलित के रूप में सूचीबद्ध है; ऐसा लगता है कि 'Dns.GetHostEntry' प्रत्यक्ष प्रतिस्थापन है। – Justin

+1

@ जस्टिन: मैंने पहले से ही संपादित किया है। – SLaks

संबंधित मुद्दे