Recuperare l’indirizzo IP della macchina

Magari è una cosa ovvia e non serve a nessuno, ma secondo me merita un breve post, come memo Winking smile

A volte mi serve abilitare o disabilitare delle features a seconda del sito in cui il programma viene lanciato. Non essedo feature mission critical, mi viene comodo utilizzare l’indirizzo IP, la cui radice è diversa per ogni sito.

Oggi mi è successo che una feature non si abilitava anche se la radice dell’indirizzo IP era quella corretta. Questo perchè la mia “collaudata” routine mi stava tornando l’indirizzo IPv6.

Sul mitico Stackoverflow ho trovato subito la soluzione: filtrare il range degli indirizzi ritornato da GetHostEntry() Smile

        private string GetHostIpAddress()
        {
            return Array.FindLast(Dns.GetHostEntry(Dns.GetHostName()).AddressList, 
                                    x => x.AddressFamily == AddressFamily.InterNetwork).ToString();

        }

Per tutti I tipi di AddressFamily andate qui.

Technorati Tags: ,

posted @ mercoledì 4 aprile 2012 19:48

Print
Comments have been closed on this topic.
«dicembre»
domlunmarmergiovensab
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678