Vill ha fram vilket nätverk som man är uppkopplad mot/till/på... Du är nog helt enkelt ute efter vem som äger din ip-adress, och det får du från http://www.ripe.net/. Tack.Hur får man fram nätverksnamnet i vb.net?
T.ex. kan man se det under Inställningar - Överföring - Auto-Speed i Vuze (Azureus nya namn).
Som jag själv sitter uppkopplad hemma mot Telia och kan då utläsa det i Vuze som:
<code>TELIANET - SWEDEN TeliaNet Sweden</code>
Eller via mitt mobila bredband:
<code>VODAFONE-SE-AS Vodafone Sverige, mobile company located in Sweden</code>
Hur gör man för att få denna information i en sträng?Sv: Hur får man fram nätverksnamnet i vb.net?
Sv:Hur får man fram nätverksnamnet i vb.net?
Hittade den saknade pusselbiten där.
Så här blev det, fulkodat:
Först en funktion för att få fram min externa IPadress:
Private Function externIPadress() As String
On Error GoTo fel
Dim req As HttpWebRequest = WebRequest.Create("http://whatismyip.com/automation/n09230945.asp")
Dim res As HttpWebResponse = req.GetResponse()
Dim Stream As Stream = res.GetResponseStream()
Dim sr As StreamReader = New StreamReader(Stream)
externIPadress = sr.ReadToEnd()
Exit Function
fel:
externIPadress = ""
End Function
(hittade den på ett forum http://www.webmaster-talk.com/net-programming-forum/162268-find-external-ip-address-vb-net.html)
Sedan en liten funntion för att plocka fram namnet på nätverket, typ Telia eller Telenor...
Private Function nätverksNamn(ByVal IPadress As String) As String
On Error GoTo fel
Dim server As String = "whois.ripe.net"
Dim returData As String = ""
Dim tcpClient As New TcpClient()
Dim tempData As String
Dim tempRad() As String
tcpClient.Connect(server, 43)
Dim networkStream As NetworkStream = tcpClient.GetStream()
If networkStream.CanWrite And networkStream.CanRead Then
Dim sendBytes As [Byte]() = Encoding.ASCII.GetBytes(IPadress + vbCrLf)
networkStream.Write(sendBytes, 0, sendBytes.Length)
Dim bytes(tcpClient.ReceiveBufferSize) As Byte
Dim recvSize As Int32
recvSize = networkStream.Read(bytes, 0, CInt(tcpClient.ReceiveBufferSize))
While (recvSize <> 0)
tempData = Encoding.ASCII.GetString(bytes, 1, recvSize)
tempRad = Split(tempData, vbLf)
For Each rad In tempRad
If Mid(rad, 1, 8) = "netname:" Then
returData = Trim(Mid(rad, 9))
End If
Next
recvSize = networkStream.Read(bytes, 0, CInt(tcpClient.ReceiveBufferSize))
End While
Else
returData = ""
End If
tcpClient.Close()
nätverksNamn = returData
Exit Function
fel:
nätverksNamn = ""
End Function
(hittade denna via http://www.xenocafe.com/tutorials/vb.net/whois_client/index.php)