# Help Request: Dialup, CardBus Cell Phone, etc. Modem IP Loopback Test

**URL:** <https://www.ruby-forum.com/t/help-request-dialup-cardbus-cell-phone-etc-modem-ip-loopback-test/124876>\
**Category:** Ruby\
**Created:** [January 3, 2008, 1:18pm UTC](https://www.ruby-forum.com/t/help-request-dialup-cardbus-cell-phone-etc-modem-ip-loopback-test/124876 "2008-01-03T13:18:01Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![kelleysislander](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/f6c823/32.png) [@kelleysislander](https://www.ruby-forum.com/u/kelleysislander)\
**Post date:** [January 3, 2008, 1:18pm UTC](https://www.ruby-forum.com/t/help-request-dialup-cardbus-cell-phone-etc-modem-ip-loopback-test/124876/1 "2008-01-03T13:18:01Z")

</div>

Rubyists,

If any of you having a “not-always-on” internet connection would  
be willing to try my test program on your systems, I’d be most  
grateful:

[http://tastyspleen.net/~billk/ruby/loopback-test/](http://tastyspleen.net/~billk/ruby/loopback-test/)

Years ago, some colleagues and I learned that some operating  
systems can attempt to dial out to establish an internet connection,  
even when a program is only trying to do inter-process communication  
using the IP stack over loopback (localhost). I am hoping that this  
has changed in the intervening years.

The purpose of this test is to discover whether your OS can handle  
UDP and TCP activity on localhost, without the OS trying to dial  
your modem and establish an internet connection.

The program performs two tests. UDP over loopback, and TCP over  
loopback. Before the tests, you are asked to verify that your  
system is currently NOT connected to the internet. After the tests,  
the program gives the option to automatically submit the results  
via email, or explains how to submit the results manually.

No personal information will be gathered during this test, and a  
summary of the results will be made available to everyone.

Here’s hoping all tests come back negative!

Thanks very much for your help!

Regards,

Bill

---

<div class="post-metadata">

**Author:** ![kelleysislander](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/f6c823/32.png) [@kelleysislander](https://www.ruby-forum.com/u/kelleysislander)\
**Post date:** [January 3, 2008, 6:18pm UTC](https://www.ruby-forum.com/t/help-request-dialup-cardbus-cell-phone-etc-modem-ip-loopback-test/124876/2 "2008-01-03T18:18:51Z")

</div>

Maybe the apps are selecting the wrong ‘local address’, i.e. using the  
external address as if it were a loopback address.

I think I’ve even seen that.

---

<div class="post-metadata">

**Author:** ![kelleysislander](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/f6c823/32.png) [@kelleysislander](https://www.ruby-forum.com/u/kelleysislander)\
**Post date:** [January 3, 2008, 7:21pm UTC](https://www.ruby-forum.com/t/help-request-dialup-cardbus-cell-phone-etc-modem-ip-loopback-test/124876/3 "2008-01-03T19:21:25Z")

</div>

Bill K. wrote:

> even when a program is only trying to do inter-process communication  
> using the IP stack over loopback (localhost). I am hoping that this  
> has changed in the intervening years.

Did you rule out DNS lookups? Try setting  
Socket.do\_not\_reverse\_lookup=true.

Pickaxe II on Socket#addr:

Returns the domain, port, name, and IP address of sock as a four-element  
array. The name will be returned as an address if the  
do\_not\_reverse\_lookup flag is true.

u = UDPSocket.new  
u.bind(‘localhost’, 8765)  
u.addr ? [“AF\_INET”, 8765, “localhost”, “127.0.0.1”]  
BasicSocket.do\_not\_reverse\_lookup = true  
u.addr ? [“AF\_INET”, 8765, “127.0.0.1”, “127.0.0.1”]

---

<div class="post-metadata">

**Author:** ![kelleysislander](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/f6c823/32.png) [@kelleysislander](https://www.ruby-forum.com/u/kelleysislander)\
**Post date:** [January 3, 2008, 8:33pm UTC](https://www.ruby-forum.com/t/help-request-dialup-cardbus-cell-phone-etc-modem-ip-loopback-test/124876/4 "2008-01-03T20:33:54Z")

</div>

Hi James and Joel,

From: “James T.” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

> Maybe the apps are selecting the wrong ‘local address’, i.e. using the  
> external address as if it were a loopback address.

From: “Joel VanderWerf” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

> Did you rule out DNS lookups? Try setting Socket.do\_not\_reverse\_lookup=true.

The original code (in Java) is now lost to the mists of time  
(and previous employers 🙂

So I can’t say for SURE that we were properly binding to loopback  
instead of 0.0.0.0.

But at the time we got bitten pretty badly by certain OS’ wanting  
to dial the modem, and it was a problem that Apple acknowledged as  
unfixable in their OS.9 systems at the time (even over loopback.)  
We also experienced the problem on Win 9x systems with AOL accounts.

Given that we only experienced the problem in certain OS and  
software environments, I was hoping a variety of dialup users might  
try my test program, in the hopes of learning whether there may yet  
any systems out there that exhibit the undesired behavior.

Regards,

Bill

---

<div class="post-metadata">

**Author:** ![kelleysislander](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/f6c823/32.png) [@kelleysislander](https://www.ruby-forum.com/u/kelleysislander)\
**Post date:** [January 3, 2008, 8:45pm UTC](https://www.ruby-forum.com/t/help-request-dialup-cardbus-cell-phone-etc-modem-ip-loopback-test/124876/5 "2008-01-03T20:45:40Z")

</div>

On 3 Jan 2008, at 15:31, Bill K. wrote:

> The original code (in Java) is now lost to the mists of time  
> (and previous employers 🙂
> 
> So I can’t say for SURE that we were properly binding to loopback  
> instead of 0.0.0.0.
> 
> But at the time we got bitten pretty badly by certain OS’ wanting  
> to dial the modem, and it was a problem that Apple acknowledged as  
> unfixable in their OS.9 systems at the time (even over loopback.)  
> We also experienced the problem on Win 9x systems with AOL accounts.

Although I haven’t spent any time looking at it professionally, some  
of the older AOL installations did nasty things hooking over the dial  
up and IP stacks. In some versions it would even auto-launch the AOL  
branded browser etc.

> Given that we only experienced the problem in certain OS and  
> software environments, I was hoping a variety of dialup users might  
> try my test program, in the hopes of learning whether there may yet  
> any systems out there that exhibit the undesired behavior.

Some might. If you want truly local comms, you could use named pipes  
and / or unix sockets (clearly there are platform specifics to be  
dealt with).
