Octo setup -- Error sending data to port 4096 on 127.0.0.1

I’ve followed https://github.com/jitsi/jitsi-videobridge/blob/master/doc/octo.md to set up Octo using the “SplitBridgeSelectionStrategy” in 2 “regions”, i.e. hk1 and hk2.

VideoBridge 1:
/etc/jitsi/videobridge/sip-communicator.properties has:

# the address to bind to locally
org.jitsi.videobridge.octo.BIND_ADDRESS=127.0.0.1
# the address to advertise (in case BIND_ADDRESS is not accessible)
org.jitsi.videobridge.octo.PUBLIC_ADDRESS=<public ip of vb1>
# the port to bind to
org.jitsi.videobridge.octo.BIND_PORT=4096
# the region that the jitsi-videobridge instance is in
org.jitsi.videobridge.REGION=hk1

VideoBridge 2:
/etc/jitsi/videobridge/sip-communicator.properties has

# the address to bind to locally
org.jitsi.videobridge.octo.BIND_ADDRESS=127.0.0.1
# the address to advertise (in case BIND_ADDRESS is not accessible)
org.jitsi.videobridge.octo.PUBLIC_ADDRESS=<public ip of vb2>
# the port to bind to
org.jitsi.videobridge.octo.BIND_PORT=4096
# the region that the jitsi-videobridge instance is in
org.jitsi.videobridge.REGION=hk2

Now with both videobridges restarted successfully. I’m tailing on both logs.
When I join a session on 2 browser tabs, I see myself in video, but in the logs I see this error.

 WARNING: [62] [port=4096 address=127.0.0.1] UdpTransport.send#111: Error sending data
java.io.IOException: Invalid argument (sendto failed)
	at java.net.PlainDatagramSocketImpl.send(Native Method)
	at java.net.DatagramSocket.send(DatagramSocket.java:693)
	at org.jitsi.videobridge.transport.udp.UdpTransport.send(UdpTransport.kt:108)
	at org.jitsi.videobridge.transport.udp.UdpTransport.send(UdpTransport.kt:120)
	at org.jitsi.videobridge.octo.OctoRelayService$start$2.sendData(OctoRelayService.kt:75)
	at org.jitsi.videobridge.transport.octo.BridgeOctoTransport.sendData(BridgeOctoTransport.kt:229)
	at org.jitsi.videobridge.transport.octo.BridgeOctoTransport.sendString(BridgeOctoTransport.kt:184)
	at org.jitsi.videobridge.octo.ConfOctoTransport.sendMessage(ConfOctoTransport.java:460)
	at org.jitsi.videobridge.Conference.sendMessage(Conference.java:334)
	at org.jitsi.videobridge.EndpointMessageTransport.endpointMessage(EndpointMessageTransport.java:579)
	at org.jitsi.videobridge.message.MessageHandler.handleMessage(BridgeChannelMessage.kt:93)
	at org.jitsi.videobridge.AbstractEndpointMessageTransport.lambda$onMessage$0(AbstractEndpointMessageTransport.java:85)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

It’s odd when I run “nc -z -v -u 127.0.0.1 4096” I get (for both videobridges),

Connection to 127.0.0.1 4096 port [udp/*] succeeded!

Any idea what I’m doing wrong here?

I know what I did wrong. The BIND_ADDRESS should be the private IP, instead of 127.0.0.1

You mind helping me in the docker-version of the same ?

Haven’t used docker version for this yet. But will soon :slight_smile:

okaye. Is it working for you in the regular installation version ? How many users have you tested on it ?