Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Which ports are required for network communication? #168

Open
katettudelft opened this issue Feb 6, 2025 · 0 comments
Open

Which ports are required for network communication? #168

katettudelft opened this issue Feb 6, 2025 · 0 comments

Comments

@katettudelft
Copy link

A brief description of my network architecture:

  • Two physical PCs, robot controller and dev pc connected via ethernet on something like 10.x.x.x
  • Running on dev pc, I have two docker containers (backend and frontend) connected on a custom internal Docker network (IP addresses on 192.168.0.x)

I want the front end container to be able run the drivers and to communicate with the robot controller. Because of the internal network between the two containers, I can't simply use the host network, so I need to explicitly open the ports I want to use in my compose file.

Now, I know EGM needs a UDP connection - it seems that that is normally port 6511 and/or 6510. This wasn't sufficient though.

On opening Wireshark, I saw the controller was also producing TCP traffic on port 57414 (forward from port 80, from memory).

Adding an entry to for this seemed to be enough for things to start to work.

The relevant section of my compose file:

    ports: 
    # [HOST:]CONTAINER 
      - "8000:8000" # container service stuff
      - "9090:9090" # container service stuff
      - name: egm_rob1
        target: 6511
        host_ip: 10.237.30.14
        published: "6511"
        protocol: udp
        mode: host
      - name: egm_ucdevice
        target: 6510
        host_ip: 10.237.30.14
        published: "6510"
        protocol: udp
        mode: host
      - name: egm_rob1_tcp
        target: 57414
        host_ip: 10.237.30.14
        published: "57414"
        protocol: tcp
        mode: host

My questions:

  • what is the TCP traffic? Is there a way to bind it to a specific port, rather than a random ephemeral one?
  • are there any other port numbers I should be aware of, for more precise network config cases like compose containers?

I didn't keep the wireshark data; I'll try to recreate it when I have chance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant