¿Cómo podría desactivar temporalmente una conexión de red en Java?Deshabilitar la conexión de red
Respuesta
Desafortunadamente, la desactivación de una conexión de red es específica para el sistema operativo y no conozco ninguna API Java estándar para acceder a esas características del sistema operativo. Probablemente tendrías que hacer alguna codificación específica del sistema operativo, p. a través de JNI o ejecutando programas externos, para cada sistema operativo que pretenda apoyar. El programa Java también necesitaría ser invocado con los privilegios adecuados para que pueda interferir con las interfaces de red.
¿Funcionarían? en Windows:
Runtime.getRuntime().exec ("ipconfig/release");
En Linux (suponiendo que la interfaz de red se llama eth0:.
Runtime.getRuntime().exec ("ifconfig eth0 down");
utilizo este método en una aplicación donde simplemente lanzo la conexión para todas las conexiones inalámbricas. Y luego la renuevo después de que mi aplicación está lista. Utilicé esta página como referencia: http://compnetworking.about.com/od/workingwithipaddresses/a/ipconfig.htm –
una manera bastante complicado pero factible hacer esto es crear una fábrica de aplicación toma personalizado Puede registrar llamando al Socket.setSocketImplFactory()
.
Su fábrica personalizada tendrá que devolver implementaciones de socket personalizadas que simplemente lanzan un IOException
en cada intento de conexión.
Tenga en cuenta que esto solo detiene las conexiones salientes, si desea evitar que su aplicación también acepte conexiones entrantes, tendrá que jugar un truco similar en ServerSocket
s.
Implementé una biblioteca para pruebas de tolerancia a fallas usando este enfoque con SocketImplFactory - de hecho es factible ! http://stackoverflow.com/a/43056981/504452 – bedrin
Puede desactivar todas las interfaces utilizando una ruta que wmic win32_networkadapter
donde PhysicalAdapter = True
Desactivar llamada
Sniffy que permite a block outgoing network connections en sus aplicaciones Java - arrojará un ConnectException
cada vez que intente establecer una nueva conexión de host restringido.
Simplemente agregue -javaagent:sniffy.jar=5559
a los argumentos de su JVM y apunte su navegador a localhost:5559
- se abrirá una página web con todas las conexiones descubiertas a los sistemas y controles posteriores para deshabilitar ciertas conexiones.
Si se basa la Web sus aplicaciones, incluso se puede hacer directamente desde la aplicación abierta en el navegador - ver una demostración aquí: http://demo.sniffy.io/owners?lastName=
Haga clic en un widget en la esquina inferior derecha, seleccione Network Connections
pestaña, deshabilite y conecte a localhost:8967
(base de datos) y vuelva a cargar una página para verla en acción.
responsabilidad: yo soy el autor de Sniffy
- 1. Cómo deshabilitar/habilitar la conexión de red en C#
- 2. Habilitar/deshabilitar mediante programación la conexión
- 3. Comprobar conexión de red androide
- 4. Administración de la conexión de red inalámbrica en C#
- 5. Verificación de la conexión de red utilizando Qt 4.4
- 6. socat conexión después de fallo de la red
- 7. IOException: El adaptador de red no pudo establecer la conexión
- 8. ¿Cómo deshabilitar/habilitar la red, cambiar a WiFi en el emulador de Android?
- 9. nodejs vuelven a conectar conexión a la red
- 10. ¿Se conecta a la red una conexión a localhost?
- 11. Habilitar/deshabilitar la conexión USB o WiFi programáticamente en Android
- 12. Cómo deshabilitar la conexión GSM en Android programáticamente
- 13. deshabilitar las cifras débiles en la conexión SSL
- 14. EC2 Red de error: Tiempo de espera de conexión
- 15. Deshabilitar el administrador de red para una interfaz en particular
- 16. Copia de archivos a través de una conexión intermitente Red
- 17. cortar/matar la conexión TCP en Windows
- 18. ¿Cómo verifico si tengo una conexión de red?
- 19. Se intentó una operación en una conexión de red inexistente
- 20. ¿Cómo puedo simular una conexión de red lenta
- 21. Conexión SVN + SSH que genera el error 210002, conexión de red cerrada inesperadamente
- 22. La mejor herramienta para monitorear el ancho de banda de la conexión de red
- 23. Cuál es la forma correcta de verificar la red móvil disponible (sin conexión de datos)
- 24. Cómo escanear un puerto esperando una conexión en una red
- 25. Interfaz Android con conexión Ethernet
- 26. Detectando la velocidad de conexión de red y el uso de ancho de banda en C#
- 27. ¿Cómo puedo controlar el estado de la conexión de red en Android?
- 28. Vuelva a conectar automáticamente una conexión de la red Haskell de una manera idiomática
- 29. Siempre obtenga "Se perdió la conexión de red" como un problema de validación
- 30. ¿Cómo saber que la conexión TCP está cerrada en el paquete de red Golang?
cable de tracción a cabo .... –
Sí, estoy de acuerdo con Mitch ... la manera más fácil que vas a encontrar es simplemente tirar del cable o deshabilite el adaptador de red –