How to check if a string is IPv4 or IPv6 or invalid in VB.NET

1 Answer

0 votes
Imports System
Imports System.Net

Module Module1

    Function CheckIpAddress(s As String) As String
        Dim ip As IPAddress = Nothing

        If IPAddress.TryParse(s, ip) Then
            If ip.AddressFamily = Sockets.AddressFamily.InterNetwork Then
                Return "IPv4"
            ElseIf ip.AddressFamily = Sockets.AddressFamily.InterNetworkV6 Then
                Return "IPv6"
            End If
        End If

        Return "Invalid"
    End Function

    Sub Main()
        Console.WriteLine(CheckIpAddress("112.128.1.2"))
        Console.WriteLine(CheckIpAddress("2001:0dc7:85b2:0000:0000:6d3e:0380:8651"))
        Console.WriteLine(CheckIpAddress("999.999.999.999"))
        Console.WriteLine(CheckIpAddress("abc"))
    End Sub

End Module


' run:
'
' IPv4
' IPv6
' Invalid
' Invalid
'

 



answered Jan 19 by avibootz

Related questions

...