Socket Connection Refused (raspbian) mas as portas estão abertas para conexões

0

Gostaria de estabelecer uma conexão entre meu cliente e o raspbian. Dentro da minha rede, posso me conectar ao meu serviço a qualquer momento sem problemas. Agora quero me conectar ao meu serviço pela internet. Infelizmente, isso não está funcionando quando tento usar meu ip da Internet para a conexão.

client = new MqttClient("tcp://77.777.77.77:1883", "SendingdLoop");
            client.connect();

Meu aplicativo Java informa que a conexão foi recusada (portanto, não há tempo limite):

   Could not establish connection (32103) - java.net.ConnectException: Connection **refused**: connect          at org.eclipse.paho.client.mqttv3.internal.TCPNetworkModule.start(TCPNetworkModule.java:75)
        at org.eclipse.paho.client.mqttv3.internal.ClientComms$ConnectBG.run(ClientComms.java:538)
        at java.lang.Thread.run(Thread.java:722)
    Caused by: java.net.ConnectException: Connection refused: connect
        at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
        at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:75)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
        at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:157)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:391)
        at java.net.Socket.connect(Socket.java:579)
        at org.eclipse.paho.client.mqttv3.internal.TCPNetworkModule.start(TCPNetworkModule.java:66)

Eu segui as instruções oficiais para abrir a porta: link

minha entrada é assim:

 -A INPUT -p tcp -m tcp --dport 1883 -j ACCEPT

Quando eu verifico o iptables,

iptables -L
 ACCEPT tcp -- anywhere anywhere  tcp dpt: 1883

Eu posso ver que a regra está ativa.

Existe mais alguma coisa que eu preciso configurar?

    
por Goot 31.03.2014 / 14:25

2 respostas

2

"Is there anything else I have to configure?"

Seu roteador, talvez. Você realmente não forneceu informações suficientes para fornecer uma resposta definitiva, tudo que você fez é apontar não é por causa do iptables ... talvez.

As regras do Iptables são processadas na ordem . Se essa foi a última regra anexada ( -A ) e é a última da lista quando você olha para iptables -L , ela pode ser substituída por uma regra anterior. Por exemplo, se a lista se parece com:

DROP everything
ACCEPT everything 

Nada será aceito porque tudo será descartado antes que a segunda regra seja processada (mais exatamente, a segunda regra nunca será processada porque tudo encontrará uma correspondência na primeira regra).

    
por 31.03.2014 / 14:49
1

Eu tive o mesmo problema com o mqtt broker chamado vernemq , mas resolvi adicionando o seguinte.

  1. $ sudo vmq-admin listener show

    Para mostrar a lista o permitiu IP's e portas para vernemq

  2. $ sudo vmq-admin listener start port=1885 -a 0.0.0.0 --mountpoint /appname --nr_of_acceptors=10 --max_connections=20000

    Para adicionar qualquer IP e sua nova porta. Agora você deve conseguir se conectar sem problemas.

por 05.04.2016 / 09:54