Tengo un proceso que escucha en un IP:port
, de hecho, es la transmisión por chispa que se conecta a un zócalo. El problema es que deseo crear de alguna manera un servidor que se conecte a spark en un puerto y los datos se transmitan a este servidor desde otro puerto.
Por ejemplo, el ejemplo de transmisión de chispas utiliza la utilidad netcat (por ejemplo nc -lk 5005
). Sin embargo, tengo otro servicio que escucha los mensajes entrantes y luego escupe un mensaje. Así que necesito algún tipo de servidor que pueda escuchar los mensajes del servicio A y pasarlos a la chispa.
Mi servicio A, se basa en enchufes. Y mi consumidor de chispas depende de los enchufes.
Esto es lo que he hecho hasta ahora es el reenvío de puerto a puerto, pero esto no parece funcionar:
nc -X 4 -x 127.0.0.1:5005 localhost 5006
Con la idea de que el servicio A:5005
-> socket -> 5006
-> Spark
Parece que no puedo encontrar la forma correcta de hacer que esto funcione.
Algunas respuestas han sugerido lo siguiente:
socat tcp-l:5005,fork,reuseaddr tcp:127.0.0.1:5006
Mi receptor de bujías no parece o no puede conectarse. Me sale el error:Error connecting to 127.0.0.1:5006 - java.net.ConnectException: Connection refused
fuente
Respuestas:
no puede usar solo
nc
para tráfico hacia adelante,nc
no tienekeep-alive
ofork
mododebes usar otras herramientas en su lugar
nc
; por ejemplo usarsocat
oncat
este comando escucha en el puerto
5050
y reenvía todo al puerto2020
ncat
Lee masY puedes usar otras herramientas:
Escuche en el puerto 1234 y reenvíelo al puerto 4567 en la dirección "1.1.1.1"
Escuche en el puerto 1234 y reenvíelo al puerto 4567 en la fuente de la dirección "1.1.1.1"
redir ( código fuente )
./redir :1234 1.1.1.1:5678
fuente
gost
aunque se ve increíble ...)