为什么PerMon Sever Agent只在tcp6上侦听?

时间:2018-03-27 11:27:36

标签: jmeter jmeter-plugins

通过执行以下命令在服务器上启动代理

$ ./startAgent.sh
  

INFO 2018-03-27 18:31:04.981 [kg.apc.p]():将UDP绑定到4444

     

INFO 2018-03-27 18:31:05.982 [kg.apc.p]():将TCP绑定到4444

     

INFO 2018-03-27 18:31:05.986 [kg.apc.p]():JP @ GC Agent v2.2.0开始

使用telnet

检查其与其他服务器的此代理的连接
$ telnet 192.168.1.31 4444
  

无法在端口4444上打开与主机的连接:连接失败

如果使用ipv6而不是ipv4,它可以连接到该端口。

$ telnet fe80::250:56ff:xxxx:xxxx 4444

检查地址和端口,它只监听tcp6,这就是为什么ipv6可以连接,ipv4不能。

$netstat -ano|grep 4444

tcp6       0      0 :::4444                 :::*                    LISTEN      off (0.00/0/0)

udp6       0      0 :::4444                 :::*                                off (0.00/0/0)

我的问题是为什么服务器代理只侦听tcp6:4444? 有没有办法让他听ipv4?

1 个答案:

答案 0 :(得分:0)

修改startAgent.sh文件并向其添加-Djava.net.preferIPv4Stack=true行,如下所示:

#!/bin/sh

java -Djava.net.preferIPv4Stack=true -jar $(dirname $0)/CMDRunner.jar --tool PerfMonAgent "$@"

为了使用JMeter播放相同的技巧,请在 user.properties 文件中添加类似的行(位于JMeter安装的“bin”文件夹中)

java.net.preferIPv4Stack=true

参考文献: