[Delphi] Otwarte porty

0

Hi @LL!
Pisalem nie dawno o tym jak sprawdzic otwarte porty, ale nikt nie odpowiedzial... Tak więc powtarzam pytanie:
Jak sprawdzić jakie porty sa otwarte?
Najlepiej bez użycia Indy bo nie jestem w tym zbyt dobry...

0

Jak nikt nie wie, to nie odpowie.

0

Hi @LL!
Pisalem nie dawno o tym jak sprawdzic otwarte porty, ale nikt nie odpowiedzial... Tak więc powtarzam pytanie:
Jak sprawdzić jakie porty sa otwarte?
Najlepiej bez użycia Indy bo nie jestem w tym zbyt dobry...

nie wiem co to dokładnie otwarty port ale jak ci chodzi o skaner portów
to się chyba bierze ClientSocket łączy z każdym portem po kolei i jak
wystąpi zdażenie onConnect to otwarty a jak error wywali to nie.

0

A oprocz socketow jest jakas inna mozliwosc?
I czy skanowanie każdego portu socketem to nie trwalo by za dlugo?

0

ja wiem :-)

wystarczy linux i komenda :
nmap -p 1-64000 nazwa.hosta
troche to trwa ale zawsze mozna zmniejszyc liczbe badanych portow

a programowo

otwierasz gniazdo na danym porcie i sprawdzasz czy jest error jak jest to port zamkniety jak ok to otwarty

przyklad kodu dla otwarcia portu [code]

 struct sockaddr_in   servaddr; 
 struct hostent       *buf ;    
 struct in_addr       **paddr;  
 socklen_t            socklen;  

bzero(&servaddr ,sizeof(servaddr));
servaddr.sin_family = AF_INET ;
servaddr.sin_port = htons(params->opts.port) ;

if ( (sockfd = socket(AF_INET , SOCK_STREAM , 0)) < 0 ){
cerr - "Cannot create socketn";
exit(1);
}

if ( (buf = gethostbyname(host_name)) == NULL )
cerr - "Unknown host : " - host_name - endl;
else {

      paddr = (struct in_addr **)buf->h_addr_list ; 

      if (!(inet_aton(inet_ntoa(**paddr) , &servaddr.sin_addr)) ) 
        cerr - "Cannot convert adress - critical errorn" ;

      if (connect(sockfd , (struct sockaddr *) &servaddr , sizeof(servaddr)) ) 
        cerr  "Cannot create connection - server not responding";
      else {
            cout -  "HOST : " - host_name - endl ;
           }
    }

}[/code]

... oczywiscie dla linux'a [hurra]

pozdrawiam wojta$

0

A to ciekawe.

1 użytkowników online, w tym zalogowanych: 0, gości: 1