Мои проблемы: существует один сервер по умолчанию RHEL с настроенной 2 NIC:
- eth0 с IP 10.100.0.1
- eth1 с IP 10.100.100.1
Также в Red Hat установлен jboss-6.0.0.20101110-CR1 с EAR, развернутым на этом JBoss, который представляет собой простой сервлет для прослушивания входящих данных, и после некоторой обработки приложение пересылает обработанные данные вдругой веб-сервис на другом хосте (например, 10.200.0.1), использующий платформу Apache CXF (такой прокси-сервер с некоторыми процессами обработки).
Теперь проблемы с конфигурацией.
Когда JBoss необходимо прослушиватьвходящие данные по eth0, IP 10.100.0.1 , должны быть запущены в файле run.sh с ключом -b: run.sh -b 10.100.0.1, который прост и понятен.
Но я хочу расширить мою проблему: я хочу заставить JBoss вызывать веб-сервис на другом хосте с 10.100.100.1 в качестве исходного IP-адреса для сетевого трафика.Как это сделать?Есть ли какой-либо переключатель / свойство / что-либо, что выполняет работу?
Резюме:
JBoss связывается с eth0 для прослушивания входящих данных на 10.100.0.1 и вызывает webserviceс IP-адресом источника 10.100.100.1 на 10.200.0.1 .
Пожалуйста, помогите мне, любые идеи действительно ценятся.Я хочу избежать любых настроек iptables / xinted redirect: -)
С уважением,
Mariusz
PS.Я обнаружил еще одну похожую проблему (но связанную с JBoss WS ...) в моей компании: один из наших поставщиков программного обеспечения изменил JBoss5 jbossws-native-core.jar, чтобы заставить это поведение добавить строку:
bootstrap.setOption ("localAddress", новый InetSocketAddress (localAddress, 0));
в NettyClient.java, когда localAddress предоставляется с ключом -D и читается методом getProperty ()в коде.Но я также хочу избежать любой модификации компонентов JBoss ...