Jump to content
Sign in to follow this  
lpooler

Binding the Linux Client to One IP Address

Recommended Posts

Hi,

 

What's the exact syntax for binding the Linux client to a single IP address? I've tried several iterations using the option in the man page with no success.

 

Thanks.

Share this post


Link to post
Share on other sites

retroclient -ip xxx.xxx.xxx.xxx

 

note that you'll want to put this in the RCL script so that it sticks across reboots, like this:

 

$CLIENTDIR/retroclient -daemon -ip xxx.xxx.xxx.xxx

Share this post


Link to post
Share on other sites

waltr,

 

Thanks for your reply.

 

I added the -ip option to the RCL script and restarted the retroclient. Unfortunately, I still can't connect to the client machine from the backup server on that IP. Based on the contents of retroclient.log, I don't think the client is successfully binding to the address.

 

1147288929: ConnStartListen: starting thread ConnStartListen for 127.0.0.1:0

1147288929: iplud: bound to address 0.0.0.0

1147288929: ipludAddMembership: adding membership for 0.0.0.0

1147288935: IPNSRegister(1): registered: "web2.soliddocuments.com"/"ea447b611566123a"

1147288935: ConnStartListen: starting thread ConnStartListen for 192.168.1.33:0

1147288941: IPNSRegister(1): registered: "web2.soliddocuments.com"/"1844d107abaca19b"

 

192.168.1.33 is on eth1. Previously, I was able to connect to this client on eth0. Any ideas?

 

Thanks.

Share this post


Link to post
Share on other sites

hi lp,

 

how are you trying to connect? are you using direct ip?

 

i don't have a multi-homed linux machine at my immediate disposal but i have done this before. i went ahead and bound my Red Hat testing machine (with one NIC) to check this and my log is very similar to yours, but i can conncect by direct ip (different subnet, router won't let udp broadcasts through).

 

check your firewall rules too. i've been burned by that one before.

Share this post


Link to post
Share on other sites

I have a RHEL4 server with ~ 160 IP addresses on it, and two physical Ethernets. We only wish to have Retroclient bind to the single IP address on the second Ethernet, and so added '-ip x.x.x.x' into the rcl script in the init directory. Like others, it appeared the client only bound itself to 127.0.0.1. This seemed odd and very broken, so I turned on higher logging with '-log 55' (guessing a high number would get me lots of logging). What I found was stunning.

 

About every 15 seconds or so, retroclient opens a connection to a network interface, waits a bit, and closes it. My guess is it's walking through the 160 or so interfaces on the box looking for the one with the IP address I specified. It appears whomever coded the IP address binding logic in retrocllient for Linux made some serious errors.

 

On a server with only a handful of IP addresses, using the -ip parameter seems to have worked correctly.

 

As the server with 160 addresses is still opening and closing networks, it is entirely possible that if I leave the client running long enough, it will eventually get to the end of the list (the desired address is at the end of the list) and start up. But of course if the server gets rebooted, that could mean it'd be several hours or days before the retroclient binds the address again.

 

It is NOT hard to write code that binds a single IP address. This is fairly basic programming.

 

The net result of this bug is we cannot use retrospect to back up our production Linux servers. A few servers that have only a limited number of active IP addresses assigned to them don't have the same issue.

 

This is VERY serious, IMO. It's also easily reproduced by setting up an address alias range.

Share this post


Link to post
Share on other sites

hi ds,

 

it is doubtful that EMC tested the Linux Client on a machine with 160 ip addresses. i also doubt that any of the other users of the forum will be able to test this adequately. although this is a fringe case, it does sound to me like a bug.

 

my best advice would be to call EMC Technical Support and report this, they will have to reproduce the problem but your explaination seems pretty good. before calling, you should write up a brief summary on why you are doing what you are doing, and how you did it. be as specific as you can. IMHO, the easier you make it to understand, the quicker you will see results.

 

also, it's my opinion (disregard if you'd like) that when you are asking for help or reporting a possible bug that you not sling terms like, "this is basic programming, blah, blah", even if this is the case. read my sig for more info, but here is a quote from ESR:

 

Quote:

Play it so the maintainers will want to apologize to you if the bug is real, rather than so that you will owe them an apology if you have messed up.

 


 

just friendly advice--not trying to attack you in any way, and in fact directed more to the general readers of this forum.

 

cheers.

Share this post


Link to post
Share on other sites

speaking of bugs, it seems the messageboard will not display my sig on the previous message. hopefully it will be on this one, since i referenced it.

 

cheers.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×