JMeter - Loopback address error when launching jmeter-server on Linux - linux

I'm trying to set up a distributed load testing environment using JMeter. I need to set up the remote clients using something portable like a Linux Live CD, but whenever I attempt to launch jmeter-server in Linux, I receive the following error...
Created remote object: UnicastServerRef [liveRef: [endpoint:[127.0.0.1:49018](local),objID:[3b0d3d42:12985b7a49b:-7fff, -8459389540436649718]]]
Server failed to start: java.rmi.RemoteException: Cannot start. testbox01.qa.nwr.lan is a loopback address.
After extensive googling, the only remedy I can find is to edit the /etc/hosts file so the hostname maps to something other than the 127.0.0.1 loopback address. I've tried this using Ubuntu, Fedora and CentOS, and apparently they all default to setting the hostname to 127.0.0.l.
The way I see it, I have four options...
1) Customize the /etc/hosts file for every remote test box I set up, which involves upwards of 20-50 dynamically DHCP-assigned IP addresses.
2) Figure out a way to force Linux itself to assign the hostname to its DHCP IP address by default. This is certainly the more graceful solution, but I have no idea how to do this. Anyone know?
3) Find and use a Linux distro available as a Live CD that doesn't map its hostname to 127.0.0.1 by default. Anyone know one?
4) Dive into JMeter's code and start yanking wires, but if it comes to this, I'd just as soon use another open source tool with a slimmer feature set, but whose distributed architecture doesn't suffer from this issue.
If anyone has any advice, I'd be grateful. Thanks!

In latest version, you can run your script with:
./jmeter-server -Djava.rmi.server.hostname=xxx.xxx.xxx.xxx
Replace xxx.xxx.xxx.xxx with this server's IP address, i.e., the IP address that the controlling jmeter machine will use to connect to this server.

Looks like Glen was right on the money with his comment.
Not sure is this helps but I found a bug which seems to contain a patch for this issue.
https://bugs.launchpad.net/ubuntu/+source/jakarta-jmeter/+bug/589042
Thanks again, Glen!
(If you decide to make it into an actual answer, I'll be sure to accept it!)

Change your hostname from localhost to your right ip address.
Check your hostname
hostname
Check your internet ip address
ifconfig
Add this line to /etc/hosts
your_ip_address your_hostname
Comment hostname which assigned localhost in /etc/hosts

I was able to get it to start after setting this environment variable:
export RMI_HOST_DEF=-Djava.rmi.server.hostname=XXX.XXX.XXX.XXX
Also have downloaded jmeter 2.8 from here: http://archive.apache.org/dist/jmeter/binaries/
Ubuntu apt-get version is 2.3.4

You can edit jmeter.server file to add:
RMI_HOST_DEF=-Djava.rmi.server.hostname=XXX.XXX.XXX.XXX
This solved mine problem.
You can try to check this page for more details.

Add RMI_HOST_DEF=-Djava.rmi.server.hostname=XXX.XXX.XXX.XXX
Add ipaddress hostname to /etc/hosts file
on my system ,/etc/hosts mentioned 127.0.0.1 hostname.
I removed 127.0.0.1 and added public Ip address

Related

why connman ipv4 settings are having dhcp by default

I am using yocto rocko for my board
I was setting static ip using rc.local at startup .But after some time ip gets changed.
So i found that following file is culprit
/var/lib/connman/ethernet_*_cable/settings
In the file below line is causing issues :
IPV4.method=dhcp
I changed dhcp to manual and everything is working fine.
How to change in yocto build or kernel or filesystem such that when i boot a new card its value is manual by default
Regards
If you want to keep doing it manually on startup you can use connmanctl. I use these commands:
connmanctl config ethernet_*_cable --ipv4 dhcp
connmanctl config ethernet_*_cable --ipv4 manual <ipaddress> <netmask> <gateway>
The * in ethernet_*_cable is the mac address without :'s.
I guess you could patch connman to go with static as default, but wouldn't that bring up all boards with the same IP, and not work if the adresses/routing on your network does not play well with the your static setup? IMHO it makes sense to leave it at DHCP so it can work everywhere, and then reconfigure in a script based on the logic of your choice.

Virtual Machine with FBCTF

I'm trying FBCTF competition (https://github.com/facebook/fbctf)
My problem is that, when I try to add a base level, using a VBox machine, when I try to acces to this machine's network ip, I always get the FBCTF index.php.
Networks IP is 192.168.56.1, so I use nmap -p- -A 192.168.56.0/24 for scanning the box, but cant find the correct one.
Someone knows why? I'm missing something on the port scan?
Thank you.
Already works. FBCTF is using a NAT, so all trafic is coming to the computer is being redirected to this IP.
Removing the NAT and using Bridge, solves the problem.

/etc/hosts ignored in mac El Capitan (10.11.5)

I'm attempting to redirect an existing web address to a remote machine on my subnet. To do that, I put the following into /etc/hosts
192.168.1.249 holub.com
and flush the DNS cache with
sudo dscacheutil -flushcache;sudo killall -HUP mDNSResponder
However, when I ping holub.com (the most reliable way that I know to see how the address is actually resolved), I see the real web address (204.13.10.74), not the one specified in /etc/hosts (192.168.1.249). Interestingly, the mysqladmin utility does not resolve the address correctly, but the Chrome browser does resolve the address correctly. I'm guessing that Chrome has some sort of internal workaround.
In general, it looks like /etc/hosts is being used after the actual DNS lookup, not before as it should be, so an external address is not overridable.
I've tried using various IPv6 equivalents to my local address (0:0:0:0:0:ffff:c0a8:01f9 ::ffff:192.168.1.249 ::192.168.1.249), but that doesn't help. Rebooting (instead of flushing the cache) doesn't help either.
I have found one unsatisfactory workaround. If I disable the DNS reponder with
sudo launchctl unload -w
/System/Library/LaunchDaemons/com.apple.mDNSResponder.plist
then /etc/hosts is used, but then I can't access the internet.
If anybody's encountered this problem, I'd love to know if there's a workaround.
I came across this while searching for an answer to a similar problem and wanted to post my findings for anyone else in the same position.
As a team of three, we found that edits to my /etc/hosts file appeared to work, while editing the other two's host files seemingly did not. Upon further digging, we realized I was on OS X 10.10, while they were on newer versions.
We found, after trying about a million things, that additions to the hosts file in 10.11 and up apparently could not have more than one space between the IP and the domain, for example:
DID NOT WORK:
1.2.3.4 some.site.com
DID WORK:
1.2.3.4 some.site.com
After making this change, we immediately started seeing expected results without any cache clears, reboots, or otherwise.
I know in your example you are only showing one space, but in the off chance that's now how it appeared in your actual file I wanted to share this anyway.

Configuration of a NIC from a Linux Bash Shell

I have a Dell laptop running the following version of RedHat Linux:
2.6.18-53.el5 #1 SMP Wed Oct 10 16:34:02 EDT 2007 i686 i686 i386 GNU/Linux
It has an Ethernet-over-USB connection to a device under test (DUT). This interface to the DUT is usually configured as follows:
IP address: 104.4.40.2
Netmask: 255.255.255.0
Default gateway: 104.4.40.1
The default gateway points to the DUT.
Occasionally, I need to change the IP address / default gateway to 104.4.20.2 and 104.4.20.1, respectively. (The netmask remains 255.255.255.0).
I need to make this change when I load a new configuration onto the DUT that changes its IP address. (This configuration loading is done over a second interface that is unrelated to the interface I'm discussing here.)
When I make the corresponding change to the Linux box's network configuration using the GUI, everything works fine. But I often work remotely by shelling in via ssh. So, all I have available in that case is a Bash shell.
I've used command "ifconfig" (to set the IP address and netmask) and command "route" (to install the default gateway forwarding entry) to reconfigure the interface, and I then used "iconfig" to bring the interface down and back up to try to get the changes to "take".
When I check the interface settings with "ifconfig", they looks right. When I check the forwarding table with "route", everything looks good (including the default gateway). Yet, when I try to ping the DUT, I get no reponse. If I configure the interface yet again using the GUI, I can then ping the DUT.
I am clearly doing something wrong. Could someone please kindly show me the Bash shell command line commands I need to issue to change the IP address and default gateway of interface "eth1"?
Thank you in advance!
If I've got you right, you need these two simple commands:
vim /etc/sysconfig/network-scripts/ifcfg-eth1 //modify the configuration
service network restart
Also you can write a primitive bash/perl/python wrapper for your routines...
This answer may be useful for you too.

When is it ok to assume /etc/hosts file will be used

This may be a bit of an open ended question, and truth be told I would prefer an exhaustive list, however, this has been bugging me for a while: When is it ok for me to assume a program will use the hostnames specified in /etc/hosts?
Will any of these programs use it?
ssh (via ~/.ssh/config) YES
dhcp (via /etc/dhcp/dhcpd.conf) YES
iptables ?
Every program which needs to map between URL and IP address (gethostbyname and such) will use /etc/hosts and DNS. The order is configurable via nsswitch.conf.

Resources