前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VB.NET URL(域名)转IP地址

VB.NET URL(域名)转IP地址

作者头像
一线编程
发布2020-04-27 14:48:25
15.1K1
发布2020-04-27 14:48:25
举报
文章被收录于专栏:办公魔盒

什么是“URL”?

我在脑中快速回忆着,对了!URL即 Uniform Resource Locator的缩写,翻译成中文便是“统一资源定位符”。因为互联网世界存在着不计其数的资源,每一处资源都需要有一个标记来定位它,正如人类城市中的门牌号。

什么是IP?

IP即Internet Protocol的缩写,中文译为“互联网协议”,一个如雷贯耳的名字,互联网的基石之一,一切依赖互联网通信的软件都得遵循这个协议。

好了!既然了解了它们是什么.那么我们就直接上代码吧!

方法一,代码思路(可以指定dns服务器):

通过CMD -> nslookup vbee.xyz 8.8.8.8 -> 获取到IP地址然后解析文本即可!思路非常简单!

方法一,参考代码:

代码语言:javascript
复制
Public Class Cls_cmd
  Private addr As String
  Private dnss As String
  ''初始化类传递地址,dns
  Public Sub New(ByVal address As String, ByVal dns As String)
    addr = address.ToUpper.Replace("HTTP://", "").Replace("HTTPS://", "").Split("/")(0)
    dnss = dns
  End Sub
  ''获取cmd输出字符串
  Private Function Get_cmd() As String
    Try
      Dim p As New Process()
      p.StartInfo.FileName = "cmd.exe"
      p.StartInfo.UseShellExecute = False
      p.StartInfo.RedirectStandardInput = True
      p.StartInfo.RedirectStandardOutput = True
      p.StartInfo.RedirectStandardError = True
      p.StartInfo.CreateNoWindow = True
      p.StartInfo.WindowStyle = ProcessWindowStyle.Normal
      p.Start()
      p.StandardInput.WriteLine($"nslookup {addr.ToLower} {dnss}")
      p.StandardInput.WriteLine("exit")
      p.StandardInput.AutoFlush = True
      Dim strOuput As String = p.StandardOutput.ReadToEnd()
      p.WaitForExit()
      p.Close()
      Return strOuput
    Catch
      Return String.Empty
    End Try
  End Function
 ''分析取出IP地址,只取出第一条IP地址
  Public Function Get_ip() As String
    Try
      Dim temp As String = Get_cmd()
      Dim arr As Array = temp.Split(vbCrLf)
      Dim tmp As String = String.Empty
      For Each xl In arr
        If xl Like "*Addresses:*" Then
          tmp = xl.ToString.Replace(" ", "").Split(":")(1)
        ElseIf xl Like "*Address:*" And Not xl Like "*" & dnss & "*" Then
          tmp = xl.ToString.Replace(" ", "").Split(":")(1)
        End If
      Next
      Return tmp
    Catch
      Return String.Empty
    End Try
  End Function

End Class

方法2:直接通过 .NET类实现(不能指定dns)

代码语言:javascript
复制
    Public Function Get_ip(ByVal address As String) As String
        Try
            Dim host As String = address.ToUpper.Replace("HTTP://", "").Replace("HTTPS://", "").Split("/")(0)
            Dim hostInfo As Net.IPAddress() = Net.Dns.GetHostAddresses(host)
            Return hostInfo.ToArray(0).ToString
        Catch
            Return String.Empty
        End Try

    End Function
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 办公魔盒 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档