RMI多网卡问题

问题描述

最近在项目中用到RMI开发了两个系统之间的对接,今天在客户实际环境中进行测试出现异常了,具体如下。

服务端:多网卡,网卡1:192.168.1.111(与客户端同网段) 网卡2:192.168.10.102

客户端:192.168.1.115

客户端调用时出现异常:java.rmi.ConnectException:Connection refused to host: 192.168.10.102

问题分析

客户端连接服务端是用192.168.1.111这个IP,异常中尽然报出连接不到192.168.10.102,于是搜索资料,原来在开启RMI服务时,如果服务端有多个网卡,它只是使用其中任意一个网卡,所以在多网卡的服务器上开启RMI服务的话得指定所使用的IP。

解决方法

如果是CS程序

在启动RMI服务前,通过以下代码指定RMI服务使用的IP地址:

System.setProperty("java.rmi.server.hostname","192.168.1.111");

如果是WEB程序

添加如下启动参数:

-Djava.rmi.server.hostname=192.168.1.111

以Tomcat为例(Windows)

如果用startup.bat方式启动,则在catalina.bat文件中加入如下语句:

set CATALINA_OPTS=-Djava.rmi.server.hostname=192.168.1.111

如果通过系统服务方式启动,打开注册表(dos中运行regedit),找到HKEY_LOCAL_MACHINE\SOFTWARE\ApacheSoftware Foundation\Procrun 2.0\Tomcat7\Parameters\Java中的Options选项,在值的末尾加上:

-Djava.rmi.server.hostname=192.168.1.111

RMI多网卡问题,布布扣,bubuko.com

时间: 2025-01-05 02:48:20

RMI多网卡问题的相关文章

【性能测试】jmeter的坑(1)——如何在多网卡情况下正确连接

问题现象: 性能测试时,使用的服务器配置了双网卡,windows客户机配置了四网卡,坑爹的配置,内外网的隔离,导致在使用jmeter进行分布式测试的时候总是连接失败. 原因分析: Jmeter采用了rmi进行远程调用,在开启RMI服务时,如果服务端有多个网卡,它只是使用其中任意一个网卡,默认情况下,导致jmeter的controller机器和agent机器不在同一个网段内,无法互通,导致失败 解决方法: 我们要在多网卡的服务器上开启RMI服务的话必须指定IP,使他们能够在同一个网段内. 需要以下

RMI客户端找不到某个服务的注册的bean

原因: Sever1上是单网卡,Sever2上是多网卡.而服务A未指定注册RMI的IP.导致其它服务不能找到相应的RMI服务. 解决办法: <bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> <property name="targetObject" value="#{@systemProperties}" />

Jmeter 客户端多网卡问题

问题现象: 客户端开启了虚拟机,然后本地启动jmeter.server时,发现IP地址非本地IP 分析原因: 当服务器有多网卡时它会随机挑选一个网卡使用 解决方法: 在客户端的jmeter.bat中修改配置指定客户端的网卡ip 增加配置项:set rmi_host=-Djava.rmi.server.hostname=本机IP地址 修改配置项:set ARGS=%DUMP% %HEAP% %NEW% %SURVIVOR% %TENURING% %PERM% %CLASS_UNLOAD% %DDR

Nagios监控Windows的网卡流量

Nagios监控Windows的网卡流量 使用/usr/local/nagios/libexec/中的check_traffic.sh,不但可以监控Linux的网卡流量,也可以监控Windows服务器的流量. 1 Check_traffic.sh用法用法 [[email protected] libexec]#/usr/local/nagios/libexec/check_traffic.sh -h Usage: ./check_traffic.sh [ -v ] [ -6 ] [ -r ] -

linux 克隆虚拟机网卡配置

1.修改配置文件/etc/udev/rules.d/70-persistent-net.rules  注释掉第一块网卡 修改 第二块网卡为eth0 2.同时修改网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 的mac地址:重启网络正常

Linux双网卡绑定bond0详解

1 什么是bond 网卡bond是通过多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,在生产场景中是一种常用的技术.Kernels 2.4.12及以后的版本均供bonding模块,以前的版本可以通过patch实现.可以通过以下命令确定内核是否支持 bonding: [[email protected] network-scripts]#cat /boot/config-2.6.32-573.el6.x86_64 |grep -i bonding CONFIG_BONDING=

linux文本三剑客匹配网卡IP地址大PK(CentOS 7系统)

    运维工程师在做配置的过程中很多时候都需要去获取目标服务器网卡上的IP地址,那究竟用什么方式获取更便捷了,博主今天就带大家使用linux文本三剑客分别获取一下网卡的IP地址,最后我们再来对比一下. 实验环境: 系统:CentOS 7.2 网卡张数:双网卡 linux文本三剑客之grep 获取ifconfig输出中的IP地址 ifconfig | egrep -o "\<([1-9]|[1-9][0-9]|1[0-9][0-9]|2[0-1][0-9]|22[0-3])\>.(\

半截水晶头线接激活本地虚拟网卡

可有可无的小方法~ 很多人在用虚拟机的时候,有时虚拟网卡不够用,又没有可用网线插来激活本地网卡时,这时可以自制一个水晶头加半截网线(或者从水晶头还 能用的废掉的网线上截取下来如下图)来激活本地网卡,多增加一个可用虚拟网卡(虽然第一次在当时无法解决(^-^)) 制作方法:截取或制作成水晶头后,将线皮剥掉至漏出铜线,将线序颜色排列成T-568B的线序(如下图) 以10/100兆太网网卡为例的DTE类型接口引脚定义为(对应上图从左到右): 1-TX+Tranceive  Data+  (发信号+)  

Hyper-V虚拟机Redhat添加网卡找不到网卡配置文件解决方法

环境:Hyper-V虚拟机上面安安装Redhat6.7 问题:系统安装时,只有一块网卡,现根据需要,增加一块网卡,DHCP获取IP地址,在Hyper-V设置中增加网卡后,存在连个问题:1./etc/sysconfig/network-scripts/中找不到配置文件且无法连接外网 解决方法: 1.cat /etc/udev/rules.d/70-persistent-net.rules 查看网卡的MAC地址和网卡名称 2. 在/etc/sysconfig/network-scripts/下建立i