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: ,
«aprile»
domlunmarmergiovensab
25262728293031
1234567
891011121314
15161718192021
22232425262728
293012345