26. marts 2010 - 11:16
Der er
10 kommentarer
test af TCP port fra ASP.NET side
Hej jeg er ved at være på lidt dybt vand her så jeg må spørge eksperterne om hjælp. Jeg sidder og er ved at lave en side som trækker en masse oplysninger om klienten, som offentlig ip adresse, hostname osv. her vil jeg meget gerne have mulighed for at tjekke om et par specifikke TCP porte er åben for offentligheden. nogle der har en ide til en måde at teste om TCP porten er åben? På forhånd tak //MacHawk
Annonceindlæg fra Novataris
Vejen til devops med Bavarian Nordic
Bavarian Nordics vækst blev starten på et DevOps-samarbejde med Novataris for hurtigt at kunne tilpasse IT-organisation til forretningen.
7. december 2023
26. marts 2010 - 12:36
#1
Kører din side i full trust? I så fald kan du vel bare lave en tcp-connection mod den? bool IsTcpPortOpen(string hostName, int port) { using (TcpClient client = new TcpClient()) { try { client.Connect(hostName, port); return true; } catch (SocketException) { return false; } } } (ej prøvet)
26. marts 2010 - 13:05
#2
hej bvli din kode fungere fint, men kun hvis porten er forwarded til et device der også svare. Jeg kan ikke bruge den til at tjekke en port som port 80, som jo næsten altid er åben for på klientsiden, men ikke er forwarded til en specifik host. er der nogen måde jeg kan se om den bliver afvist ved firewallen eller om den kommer igennem der?
26. marts 2010 - 13:54
#3
Uh.. Du mener om du kan komme ind bag en NAT'ed firewall? Den er nok sværere. Og kommer især også an på hvordan systemet er sat op hos klienten. Er det firewall'ens IP der er afsenderen? Er det en offentlig IP, der blot er routed gennem firewall'en osv. Jeg tror det bliver svært - men jeg er ikke netværksekspert, så jeg vil ikke afvise noget.
26. marts 2010 - 14:29
#4
ja. det er planen siden ligges op på en offentlig hjemmeside, hvor den skal teste om der er åben for nogle porte, 9000, 9001 osv, Afsenderen vil jo så ledes være en offentlig ip, som sender til brugerens offentlige IP. planen er at lave en lille oversigt til brugeren om at der er åben eller lukket for port 90XX for indgående og udgående trafik.
26. marts 2010 - 15:05
#5
Brugerens offentlige IP er jo som regel hans routers ip. Og den er det ret svært at komme bagom :)
26. marts 2010 - 18:33
#6
ja, men det jeg gerne vil vide er om porten er åben i routeren.
27. marts 2010 - 00:36
#7
Den postede kode bør også give en fejl hvis routeren forwarder til noget ikke eksisterende.
30. marts 2010 - 08:35
#8
det er også der min problematik ligger. er der en måde at se om jeg bliver afvist i routeren, eller om det er fordi der ikke er en host på den anden side?
26. april 2010 - 03:03
#9
Jeg tvivler. Man forsøger at connecte til en adresse og port men man får ikke etableret connection. Hvorvidt NAT-router/firewall har afvist eller har forwardet til en host bagved som har afvidt bør være usynligt for dem udenfor.
13. juni 2010 - 05:00
#10
Tid at få afsluttet her?
Kurser inden for grundlæggende programmering