Al ejecutar el software o proyecto, ocurren los siguientes problemas:
panic: blademaster: listen tcp: 0.0.0.0:8080: listen tcp 0.0.0.0:8080: bind: Se intentó acceder a un socket de una manera prohibida por sus permisos de acceso.
sistema de ventanas
El primer caso: ocupado por otros programas
1. Primero determinar quién está ocupando el puerto.
1) Use Ejecutar para abrir cmd , ingrese directamente netstat -ano, presione Entrar, y el más a la derecha corresponde a PID = 1328.
Nota: No se recomienda usar este comando, hay demasiados puertos para ver
2) Use Ejecutar para abrir cmd , ingrese directamente el siguiente comando y presione Entrar. Verificar el PID correspondiente al puerto ocupado .
netstat -aon | find "8080" o netstat -aon | grep "8080" # es para ver la ocupación de un solo puerto de 8080
**************************************************** **************************************************** **
netstat -aon | findstr "80" o netstat -aon | findstr :80 # es para ver una serie de puertos incluyendo 80, por ejemplo 800,8080
2. Para ver el proceso correspondiente al PID, ingrese tasklist|findstr "9880" para ver el proceso que ocupa el puerto
lista de tareas|findstr "9880"
De lo anterior se puede ver que el programa "vmware-hostd.exe" ocupa este puerto
1) Matar el proceso de acuerdo con el número de proceso
taskkill -f -pid 9880 或 taskkill /f /t /im vmware-hostd.exe
2) Encuentre el proceso correspondiente en el administrador de tareas y finalice el proceso directamente
Caso 2: Listado como puerto reservado por el sistema
Indica que el puerto está ocupado, pero no se encuentra el proceso ocupado.
La razón es que Windows reserva algunos puertos que se encuentran en la secuencia de puertos reservados por el sistema.
Use el siguiente comando para ver
interfaz netsh ipv4 mostrar protocolo de rango de puerto excluido = tcp
Posibles razones por las que Windows reserva estos puertos:
- Bloqueado por Microsoft por encontrar actividad de virus
- Después de instalar la actualización de Windows, la lista de puertos reservados ha cambiado
- Habilitar la función Hyper-V
Hay tres soluciones:
- cambiar a otro puerto
- Apague la función Hyper-V (es posible que aún esté ocupada después de que se apague)
- Establecer estos puertos como exclusiones de puertos administrados
netsh int ipv4 agregue el protocolo de rango de puertos excluidos = tcp startport = 8000 número de puertos = 300
Después de ejecutar este comando, reinicie y vuelva a consultar los puertos reservados, encontrará que habrá un * al final de la lista de puertos, y Hyper-V no utilizará estos puertos en este momento.
sistema linux
1. Ver el uso del puerto
netstat -tln //verificar todo
netstat -tln | grep 80 //Comprueba solo el uso del puerto 80
netstat -aptn //Ver todos los números de puerto abiertos bajo el usuario actual
netstat -nupl //Ver toda la información del número de puerto usando el protocolo udp en el sistema
netstat -ntpl //Ver la información del número de puerto usando el protocolo tcp en el sistema
2. Verifique a qué programa pertenece el puerto. ¿Qué proceso ocupa el puerto?
lsof -i :80
3. Matar el proceso que ocupa el puerto
matar -9 identificación del proceso