Я пытаюсь установить связь UDP, мой сервер работает на хост-компьютере, а клиент работает в контейнере.Я отправляю начальную широковещательную рассылку с IP-адреса сервера.
Но Docker изменяет IP-адрес моего пакета дейтаграммы на свой адрес шлюза с IP-адреса хоста, и поэтому мое Java-приложение, работающее внутри контейнера, не может отправлять UDP-пакеты хосту.
Есть ли способ сохранить IP-адрес хоста в дейтаграмме?
version: '2.3'
services:
cs:
image: connectivity:latest
hostname: cs
restart: always
ports:
# external:internal
- "8088:9980"
- "24005:24005/udp"
volumes:
- ../../../target:/home
depends_on:
- rabbitmq-server
network_mode: host
networks:
hnet:
aliases:
- cs
cap_add:
- ALL
environment:
SERVER_PORT: "9980"
SPRING_RABBITMQ_HOST: "rabbitmq-server"
DCX_CS_RABBITMQ_PORT: "5672"
SPRING_PROFILES_ACTIVE: "local,integration"
rabbitmq-server:
image: rabbitmq:3.6-management-alpine
hostname: rabbitmq-server
restart: always
networks:
network_mode: host
hnet:
aliases:
- rabbitmq-server
ports:
# external:internal
- "5680:5672"
- "15680:15672"
- "32780:32768"