PDA

Ver la versión completa : sobre los puertos y netstat



Bronson
24-10-2008, 11:25
Hola

Estoy leyendo el manual "Redes Gestión y soluciones" de mike meyers.
Tengo una duda sobre los puertos del protocolo TCP, el manual habla de que cada aplicación de internet utiliza uno o varios puertos para distinguir a que software se dirigen los paquetes TCP/IP.
Sin embargo cuando navego por internet y ejecuto el comando "netstat -a" aparecen un monton de puertos TCP abiertos con la conexion "ESTABLISHED" y ninguno de ellos es el puerto 80, que es el único que deberia estar abierto segun el manual. ¿Esa información es solo válida para el servidor? ¿Como es que el cliente abre automaticamente sin pedir permiso muchos mas puertos?
¿como es que si paso un escaner de puertos a mi pc no detecta ninguno abierto aunque al ejecutar el comando netstat -a aparece lo siguiente
Conexiones activas

Proto Dirección local Dirección remota Estado
TCP apd211:smtp apd211:0 LISTENING
TCP apd211:http apd211:0 LISTENING
TCP apd211:epmap apd211:0 LISTENING
TCP apd211:https apd211:0 LISTENING
TCP apd211:microsoft-ds apd211:0 LISTENING
TCP apd211:1025 apd211:0 LISTENING
TCP apd211:5800 apd211:0 LISTENING
TCP apd211:5900 apd211:0 LISTENING
TCP apd211:8081 apd211:0 LISTENING
TCP apd211:1030 apd211:0 LISTENING
TCP apd211:1030 apd211:1170 ESTABLISHED


con varios puertos LISTENING?


Busco en google pero solo me aparecen listados de los puertos TCP conocidos y demás.
Saludos y disculpen por mi ignorancia.

Cypress
25-10-2008, 03:32
mike mayers ??
http://content.answers.com/main/content/wp/en-commons/thumb/c/c2/200px-Mike_Myers.jpg

creo que te han estafado jajaja

En este momento estoy usando windows :(
mirá esto, hice lo que vos, y quede un poco mareado, generalmente yo ejecuto -avn.

me fui al querido netstat -avn y mira esto:



Conexiones activas

Proto Dirección local Dirección remota Estado
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
TCP 127.0.0.1:1025 0.0.0.0:0 LISTENING
TCP 127.0.0.1:2401 127.0.0.1:2402 ESTABLISHED
TCP 127.0.0.1:2402 127.0.0.1:2401 ESTABLISHED
TCP 127.0.0.1:2403 127.0.0.1:2404 ESTABLISHED
TCP 127.0.0.1:2404 127.0.0.1:2403 ESTABLISHED
TCP 169.254.238.161:139 0.0.0.0:0 LISTENING
TCP 190.134.#.#:1188 207.46.108.109:1863 ESTABLISHED
TCP 190.134.#.#:1901 83.42.156.2:1956 ESTABLISHED
TCP 190.134.#.#:2135 190.133.140.130:3384 ESTABLISHED
UDP 0.0.0.0:445 *:*
UDP 0.0.0.0:500 *:*
UDP 0.0.0.0:1031 *:*
UDP 0.0.0.0:1057 *:*
UDP 0.0.0.0:1058 *:*
UDP 0.0.0.0:1106 *:*
UDP 0.0.0.0:1298 *:*
UDP 0.0.0.0:1405 *:*
UDP 0.0.0.0:4500 *:*
UDP 127.0.0.1:123 *:*
UDP 127.0.0.1:1186 *:*
UDP 127.0.0.1:1900 *:*
UDP 127.0.0.1:2396 *:*
UDP 169.254.238.161:123 *:*
UDP 169.254.238.161:137 *:*
UDP 169.254.238.161:138 *:*
UDP 169.254.238.161:1900 *:*
UDP 169.254.238.161:14724 *:*
UDP 169.254.238.161:43703 *:*
UDP 190.134.18.141:9 *:*
UDP 190.134.18.141:123 *:*
UDP 190.134.18.141:1900 *:*
UDP 190.134.18.141:8328 *:*
UDP 190.134.18.141:28551 *:*


Ahí ves que los listening van al 0.0.0.0 nada de que preocuparse, en tu caso:

apd211 <= supongo que sera tu usuario, va a tu misma maquina.
Todo tranqui.

Bronson
25-10-2008, 09:18
Hi

Gracias por tu respuesta
¿Como es que cuando me conecto a una pagina de internet en ningun caso me aparece una conexión con el puerto 80, sino con otros puertos?
Puedes responderme a las preguntas del principio del post por favor

Y el libro esta bien, no te preocupes :-)

Saludos

Cypress
26-10-2008, 01:41
Es que a demás del 80 (http), podria estar usando https (443)

Lo que te muestra son las conexiones establecidas y/o activas.

al visitar una pagina web, no tenes una conexion activa constantemente con el servidor.
despues de transmitir la info correspondiente. se cierra la conexión.
entra a cualquier pagina y enseguida fijate el netstat, vas a ver que las conexiones terminaron.



Active Internet connections
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 0 192.168.1.102.51435 a96-17-104-201.d.http ESTABLISHED
tcp4 0 0 192.168.1.102.51342 an-in-f19.google.https ESTABLISHED
tcp4 0 0 192.168.1.102.51286 by1msg2175305.ph.msnp ESTABLISHED
tcp4 0 0 192.168.1.102.51471 192.168.1.100.netbios- TIME_WAIT
tcp4 0 0 192.168.1.102.51474 192.168.1.100.netbios- TIME_WAIT
tcp4 0 0 192.168.1.102.51201 81.52.250.81.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51253 81.52.250.88.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51243 80.12.98.33.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51245 80.12.98.33.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51252 81.52.250.88.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51207 81.52.250.97.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51208 81.52.250.97.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51209 81.52.250.97.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51199 81.52.250.81.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51219 a96-17-104-107.d.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51217 a96-17-104-107.d.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51205 81.52.250.81.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51226 a96-17-104-122.d.http FIN_WAIT_2
tcp4 0 0 192.168.1.102.51249 81.52.250.87.http FIN_WAIT_2


y al rato..


Active Internet connections
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp4 0 0 192.168.1.102.51342 an-in-f19.google.https ESTABLISHED
tcp4 0 0 192.168.1.102.51286 by1msg2175305.ph.msnp ESTABLISHED
tcp4 0 0 192.168.1.102.51489 by2msg2263510.ph.msnp FIN_WAIT_2
tcp4 0 0 192.168.1.102.51502 192.168.1.100.netbios- TIME_WAIT



Creo que gmail, al usar ajax, está constantemente enviando y recibiendo info al servidor, y por eso la conexion es persistente.

No sé, supongo que j8 me puede corregir si dije algo mal, o tiene una explicacion más técnica o profecional ;)

Saludoss :)

miguel86
26-10-2008, 21:38
Cuando navegas por webs y vas solicitando recursos en el protocolo http antiguo se establecía la conexión (la típica conexión tcp de tres vías) para cada recurso solicitado y se volcía a cerrar, así por ejemplo si una web contenía varias imágenes abrías una conexión tcp, pedías el recurso y se volvía a cerrar así para cada una de las imágenes (por ejemplo solicitas la web y en cada recurso incluído en el html se hacía lo anterior)

Con el protocolo http 1.1 ya sólo se abre la conexión una vez, se solicita todo lo que se haya que solicitar y se vuelve a cerrar.

De esta manera como lo dicho anteriormente tienes que mirar las conexiones cerradas ya que en el momento que ya se ha descargado una página en el navegador se cierra la conexión, de todas maneras todo ésto con un sniffer se ve mucho mejor y por lo menos para mí es mucho más explicativo y se aprende mucho más que viendo las conexiones del netstat.

Un saludo

j8k6f4v9j
28-10-2008, 15:01
heh, me temo que sí, que tienes todos esos servicios a la escucha.

Cuando un servicio está a la escucha en 127.0.0.1, esto significa que ese servicio sólo obedece a peticiones locales, desde la misma máquina en que se está ejecutando.
Pero cuando lo hace en la dirección 0.0.0.0, significa que acepta conexiones desde cualquier dirección. Algo que, si no se acompaña de una buena configuración de firewall, puede resultar fatal en entornos hostiles (p.e. internet).

Las explicaciones son muy buenas.

Y efectivamente, cuando consultamos webs en AJAX, el término asynchronous significa que nuestro navegador va haciendo las peticiones antes de que pulsemos los botones nosotros. Cuando pulsamos el botón, los contenidos ya están descargados y listos para su visualización. No es exactamente una conexión persistente, sino una sucesión de peticiones al modo que ha explicado miguel86, por eso aparecen establecidas, porque se están descargando las cosas que el programador ha estimado que serán las más susceptibles de ser elegidas por el navegante para su visualización.

Salu2



http://img359.imageshack.us/img359/6631/celliigy4.pngKeep on Rollin' :mad: