में हमेशा के लिए मैं एक मुद्दा है जहाँ मेरे नेट वेब अनुरोध हमेशा किसी दिए गए CNAME के लिए एक ही आईपी मार रहे हो रही है। सीएनएन कई आईपी पते से जुड़ा हुआ है, और जब भी DNS लुकअप होता है (एनएसlookup चलाने के माध्यम से पुष्टि की जाती है) तो उन आईपी पते यादृच्छिक क्रम में वापस आते हैं।नेट कैश डीएनएस सर्वर 2008
public void TestDNS()
{
while (true)
{
var ipAddress = Dns.GetHostAddresses("mywebsite.com").First().ToString();
Console.WriteLine(string.Format("Current: '{0}' at: '{1}'", ipAddress, DateTime.Now.ToLongTimeString()));
Thread.Sleep(1000);
}
}
मैं सभी मशीनों नवीनतम था पर सर्वर 2008 डेटासेंटर, सर्वर 2008 R2 डेटासेंटर, सर्वर 2012, विंडोज 7, और Windows 8 इस एप्लिकेशन को चलाने की है:
मैं इस परीक्षण करने के लिए एक सरल अनुप्रयोग लिखा था अद्यतन और सर्विस पैक उपलब्ध हैं।
केवल मशीन है कि विफल रहता है सर्वर 2008 हर दूसरी मशीन के बारे में एक बार एक मिनट (टीटीएल 1 मिनट है) आईपी पते बदल जाता है। सर्वर 2008 कभी स्विच नहीं करता (एक घंटे से अधिक के लिए भाग गया)।
स्पष्ट है कि, चल nslookup और मशीन पर अन्य उपकरणों से संकेत मिलता है कि DNS लौटा रहा है मैं वास्तव में क्या उम्मीद थी लगता है। यह समस्या सर्वर 2008
पर नेट के लिए विशिष्ट होना करने के लिए मेरे पास कोई सफलता के साथ इस संबंधित answer में सूचीबद्ध आइटम की कोशिश की है लगता है।
कोई विचार?
आप DNS सर्वर वापसी एक मिल सकता है नहीं करना चाहते हैं प्रत्येक कॉल के लिए आईपी पते का पूरी तरह अलग सेट?यह आपको बताएगा कि क्या आइटम कैश किए जा रहे हैं, या अगर किसी कारण से रनटाइम केवल उन मानों को सॉर्ट कर रहा है जो लौटाए गए हैं। –
अच्छा विचार @JimMischel। मैंने .NET अनुप्रयोग चलने के बाद DNS रिकॉर्ड बदलने की कोशिश की और कुछ भी नहीं बदला। ऐसा लगता है कि कोई भी DNS परिवर्तन नहीं ले रहा है (यानी, हमेशा के लिए कैश किया गया)। एकमात्र चीज जो मैंने पाया है वह मदद मेजबान फ़ाइल को अद्यतन कर रही है। अगर मैं ऐसा करता हूं, तो यह चल रहे .NET अनुप्रयोग के भीतर DNS को अद्यतन करता है। – manu08
विधि GetHostAddresses() IPAddress प्रकार की एक सरणी देता है। मेरा जवाब देखें –