Go to content Go to navigation Go to search

More Echolink findings · 1595 days ago by Gregg Wonderly

Tonight, I helped WD4OIN get his DI-624 AirPlus Xtreme router setup for echolink use. This is the first device that I’ve seen that is actually two different routers. It has a VOIP module in it as a separate routing device and it has a wireless/wired router in it as well.

What we found was that the WAN address for the router which we found by web browsing to the “gateway address” was 192.168.15.28, a private network address. I had Jack open his web browser to 192.168.15.1 and found another routing device.

This device had port triggering available and so we set up port triggering on port 5200/TCP to cause forwarding of 5198-5199/UDP. It took us a while to get through the configuration over the phone because I did not find a manual for the AirPlus Xtreme to look at on line. But, once we got that router configured with port forwarding, everything worked.

I had Jack change his computer to use a fixed IP address of 192.168.0.50 instead of the DHCP address of 192.168.0.100. We used ‘ipconfig/all’ in a DOS window to find out the DHCP configuration before hand, so then we could copy the netmask, default gateway and DNS addresses that the router was providing with DHCP.

And, we also removed the IP V6 stack because the IP addresses for IPV6 are a different format (typically they include the IPV4 private network prefix), and can be confusing to read through.

Anyway, Jack is on echolink now, and hopefully anyone else with the D-Link DI-624+ AirPlus Xtreme can use the above information to find a solution for their woes.

Comment

The low down on echolink networking · 1722 days ago by Gregg Wonderly

Recently, I posted the following followup to a question about problems with echolink to a new echolink user. This type of question is a very common thread for people new to echolink.

Basic understanding of TCP/IP networking is something that a lot of people just don’t have. The issue is that IPv4 is an inhibiting factor. If we could get the internet switched over to IPv6, we’d have more addresses and more advanced routing control that would make it possible for everyone to enjoy direct connection to the internet.

oe6zh wrote:
> Hi, all friendly helpers!
>
> I am new to echolink, otherwise reasonably seasoned, but presently
> deeply frustrated. This is the situation:
>
> Windows 2000 Professional, SP4
> TCP/IP filters set to allow all udp ports
>
> DSL modem: Alcatel speed touch home (bridging, no firewall functionality)
> Zonealarm Pro: shut down and TrueVector service deactivated!
> Winroute Pro: shut down and winroute service deactivated!
>
> Echolink Troubleshooter results:
> IP: 10.0.0.140 (this is the network adapter to which the DSL modem is
> connected)
> TCP Test: Succeeded.
> UDP Test (5198): Receive failed (10060).
> Tests complete.
> Network adapters configured to allow all udp ports
>
> Echolink: can´t connect to test station
> Echolink with Echolink Proxy: ok
>
> All IPs on the system can be pinged ok.
>
> Local portscans on PC and network adapter suggest that ALL udp ports
> are closed! (Can´t believe it)
>
> The ISP says they allow udp to ports 5198-5200.
>
> The only other VoIP app tested is Skype and SkypeOut: ok

These systems use TCP connections which traverse firewalls just fine. They go through a central server for making “calls”. This means that the size of the central server needs to be sufficent to handle all of the traffic. Echolink uses station to station traffic over UDP. The station to station path avoids a central server. But it requires that the path between all stations be bi-directionally routed. When your router and/or DSL/Cable Modem provides Network Address Translation features, this means that it makes multiple devices on the local network appear on the internet side as a single machine. With TCP, this is done by automatic port translations. This is possible with TCP because it is a connection based protocol. The initial SYN packet tells the router what local address and port is associated with the local side. It translates the port, in the SYN packet on the way out to be a new port which is not already used on the internet side. When the remote machine sends back a SYN_ACK, it now knows from which machine and port the remote traffic will be. It can then institute a connection through the router and handle that without either end of the connection aware of what’s happening.

UDP is unconnected. The packets go out, but have no required ACK or other return packet that the router can associate with the outbound UDP packets. So, you must provide the translation manually, which the router does automatically for TCP. You must configure your modem (if needed) and your router (if needed) to use port forwarding. You must put in the local address and port that should receive the inbound UDP packets.

> Unless I am totally wrong that would suggest that there is some block
> on udp ports caused by my system that I cannot identify.

The web site, http://www.portforward.com, has a ton of information, for a vast array of devices. It describes how to configure port forwarding with words and in many cases screen snapshots. Your device(s) should have instructions in their manuals for how to configure port forwarding.

Unfortunately, there is a wide range of nomenclature that is used by the various manufactures. Some call it port forwarding, some call it something else.

As an asside, there is a feature in many routers call port triggering. Port triggering is a mechanism that is related to the TCP processing. It allows the router, to forward inbound traffic when a specific outbound connection is made. For echolink, the software always makes an initial TCP connection outbound to port 5200 to download the active station list. If you have port triggering, you should set that feature up to trigger on port 5200 and then forward UDP ports 5198 and 5199. The router will take the inside address that is the source of the port 5200 connection and make that the forward-to address of all traffic inbound for ports 5198 and 5199. The nice thing about this is that it will allow you to run echolink from any of the machines (one at a time) without having to manually reconfigure the forward to address.

Comment

Javecho - Should I fork EchoLink? · 1841 days ago by Gregg Wonderly

I’ve put some effort into Javecho, my Java version of the echolink client. I still have quite a bit of work to do, to finish out the sysop mode. There are several other things that I want to do to make echolink have a few more capabilities. There is some unfinished code in Javecho that is intended to allow you to use a web camera, and then send pictures from that camera to the people that you are talking to. Whenever you are transmitting, your latest image would be periodically sent out to users who have sent your station a “I want your picture” message.

There is also the whole follow me web browsing business where a set of users can have a conversation about the web, and when the transmitting station clicks a link, everyone makes that page change together. This makes it possible to do a tutorial or teaching excercise on the web with echolink as your audio (and with the web cam, visual) mechanism.

There is also the whole business about having multiple stations behind a firewall or NAT based routing environment. If we changed the audio stream, to include a destination callsign string, or a magic cookie that we include for each station behind the same IP address, then we could place a single proxy service on the local network that all echolink inbound data went to, and the local stations would connect to that proxy to receive their audio over TCP. The end result would allow a repeater and a user station to be behind the same firewall/router.

There are some other, things that I’ve tossed around, but I don’t have enough of it thought out to discuss yet. If you are interested in these kinds of features, you might lobby echolink powers-that-be for a new version of the protocol that includes better support for station to station custom features, and a new audio stream format that includes an extra id byte that can be provided by a station to the registration server which would allow the users wanting to connect to you to get to the right station behind your fire wall. A single byte of extra data, on the end of the audio packet, could be interepreted by new code, and ignored by the old, perhaps. We’d need to check with all the authors about whether the extra routing byte would be harmful.

Anyway, if you have thoughts about these issues, or others related to echolink or Javecho, please feel free to leave them here.

Comment

Jini Lookup proposal · 1841 days ago by Gregg Wonderly

I am putting together a new proposal for Jini service Lookup that includes deferred unmarshalling/deserialization support. Have a look at it at the reef.jini.org project.

I’m trying desparately to make a good redesign of the Jini lookup mechanism to allow the software to have more explicit control over object creation and more insight into the transport constraints. Currently, if you have a desktop client application that uses ServiceUI or some other general lookup pattern, you can end up with all visible service’s ServiceUI factories and proxies being downloaded and instantiated on your desktop before you can see any of them.

This makes it hard to let a user select just one to administer out of a hundred. And, it makes it necessary for the user to have a much larger machine than should really be necessary to have all of that stuff live.

Anyway, have a look and check it out to see what’s there, and send me any comments you have via the jini-users mailing list off of jini.org.

Comment

Fixing the clothes washer · 1842 days ago by Gregg Wonderly

Well, day before yesterday we were greeted with water all over the floor under the washing machine. I drug the machine out through the garage door, took the front cover off of it, hooked up the hose, plugged it in and eyeballed things. Lo and behold, the center seal was leaking.

Its a Maytag model LAT9606AAE. I went searching on the web and found a parts place that had drawings of how the thing goes together. I proceeded to try and tear it down to see if I could get to that seal.

No luck! I needed a special wrench to get the tub out. So, I called the Maytag service place and asked them whether the threads were left hand or right hand. They told me it should come off just like a normal nut. I took a screwdriver and a hammer and attempted to knock it loose. It has nice little square indentations where the special wrench goes into the nut. I couldn’t get it to budge.

So, I called back to the Maytag place and asked about a service call. Next morning was possible, so I surrendered and set up an appointment.

Yesterday, the repairman, Tom, shows up, ready to go at it. He looked at how far down I had gotten the machine and gave me a price for replacing the seal. I said, lets do it, and away he went.

It turned out that the machine must of been leaking a little bit. It was difficult to get the tub to slide off of the transmission. What needed to be done was to lift on the tub gently and spin it back and forth so that as it came off and encountered the rim of crud on the upper area of the bearing interface, that the crud would get knocked off a little at a time.

Well Tom was just yanking up on the tub and eventually yanked hard enough to separate the tub from the seal/bearing piece. Okay, now there was easier access to the seal/bearing. He beat some more on it, and I found some WD-40 to try and help break down the crud, but also to lubricate things. He kocked the seal/bearing back down all the way, and sprayed some WD-40 on it, and then tried to bang it back off.

Things were not going well. I eventually got in there when he took a break, and knocked it back down where it was loose, and then gently lifted and spun the seal/bearing assembly back and forth as it encountered the crud that was keeping it from comming off. In no time at all, I had it off!

The next problem was that the bearing sleave that fits over the transmission body it is between the seal/bearing and the transmission, was stuck to the transmission. I got a pipe wrench to see if I could knock it loose with a little tapping on the wrench.

Any force on the wrench would put the bearing in compression onto the housing and that wouldn’t help it loosen. That was not working. So, I commented that I had a dremel tool, and that we might be able to use the cutoff wheel to slice the bearing into two pieces with two cuts and it should come off then.

Tom was not at all interested in that approach and suggested that since the transmission was less than 10 years old, that we could replace it under warrenty. The problem was that his labor to do that was half the price of a new, fancier washing machine.

So, I asked him to leave me a quote for that, and I’d think about it. So, while he was doing that, I got the dremel tool together, and as he was packing up, I started cutting two slits down the side of the sleave. It was soft metal, and I could cut a nice slit, about 2/3 of the way through with no problem. I then tried to move it with my hand, hoping that I might have relieved enough surface tension to get it loose.

It wouldn’t move with my hand, so right as Tom was driving away, I put my screwdriver into the groove I had cut and tapped on it with the screw driver. Now, it was moving! A few taps on each side, and it was loose and I pulled it off!

I tried to run out to catch Tom, but he was already gone. So, I called the Maytag store again, and asked them to have Tom call me if he had time to come back that day, and perhaps we could finish this job.

He had commented about how he thought that once we got the sleave off of the transmission, that it would not be loose enough, or smooth enough to be useable. So, I got out a sponge sanding pad that I had that was fairly fine grain, and cleaned up the built up crud that was on the surface. It cleaned up nicely. There were a few nicks at the base that I had to clean up with a file. I guess Tom had banged on it with a hammer or something there.

Well, I got a call back from Tom saying that because the sleave was on so tight that he was not willing to service the unit in that condition. That is, without replacing the transmission (it is under warrenty), at $300 some dollars laybor and parts, I was out of luck getting them to help me.

Well, I appreciate their desire to have a supportable device. But, I am really frustrated by the fact that their service operations don’t include more advanced work by the servicemen to minimize the cost to the customer, as well as to Maytag. Replacing the transmission under warrenty cost me laybor. But, it also costs Maytag money for the transmission.

Well, I went to the service center to get the parts myself. I was greeted by the same nice lady that I had been talking on the phone with. She helped me get the parts. She also provided me the magic wrench for a deposit (I returned it today).

She also photo copied some service manual pages for me. It was a pleasant experience. I got the parts home, looked over the pages for hints and kinks, and got the thing back to together fine.

I drug it back out of the garage onto the driveway and fired it up.

No leaks!

Humm, textpattern seems to have spunk · 1847 days ago by Gregg Wonderly

Well, I’ve been looking around at the features of textpattern, and it seems to have a good collection of features. I’ll continue to play with in and start putting some more substantial things out here soon.

Comment

Trying out Textpattern · 1849 days ago by Gregg Wonderly

Today I decided to try out textpattern to see how this might work for some kind of weblog or feedback mechanism.

Well, here is my first note to see how this works.