Unoffical empeg BBS

Quick Links: Empeg FAQ | RioCar.Org | Hijack | BigDisk Builder | jEmplode | emphatic
Repairs: Repairs

Topic Options
#305745 - 04/01/2008 22:09 Emplode + Player on a larger subnet...
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA

So I plug my player in here at work, and our local subnet is bigger than usual.

We're doing a single big 255.255.0.0 lump instead of the usual splitting of into multiple smaller 255.255.255.0 subnets.

The addresses I get from this wall plug at my desk are sometimes 10.1.3.x and sometimes 10.1.4.x.

This is fine if me and the empeg both end up in either .3 or .4 together. But if he's on .3 and I'm on .4, emplode can't see him.

What can I do to make Emplode work in this situation?
_________________________
Tony Fabris

Top
#305746 - 04/01/2008 22:19 Re: Emplode + Player on a larger subnet... [Re: tfabris]
tman
carpal tunnel

Registered: 24/12/2001
Posts: 5528
Check that the netmask is set properly for your network interface

Top
#305750 - 05/01/2008 01:47 Re: Emplode + Player on a larger subnet... [Re: tman]
mlord
carpal tunnel

Registered: 29/08/2000
Posts: 14493
Loc: Canada
Originally Posted By: tman
Check that the netmask is set properly for your network interface


Yeah, what he said. If you're using DHCP, then it should be automatically correct. Otherwise, you've got to fix the netmask inside the empeg config.ini file, hopefully on a line with a ;@WORK prefix!

Cheers

Top
#305751 - 05/01/2008 02:47 Re: Emplode + Player on a larger subnet... [Re: tfabris]
wfaulk
carpal tunnel

Registered: 25/12/2000
Posts: 16706
Loc: Raleigh, NC US
I bet that when you say emplode can't see it that you mean it won't automatically find it on the network. IIRC, this is because emplode uses sort of a brain-dead algorithm to send out broadcast packets. (I might be mixing it up with jEmplode. If so, sorry.) I think it just guesses that the broadcast address is a.b.c.255 instead of figuring out what the real broadcast address is. It probably ought to use 255.255.255.255, but doesn't.

Um, I don't think I really have a workaround for you, though, unfortunately.
_________________________
Bitt Faulk

Top
#305752 - 05/01/2008 05:25 Re: Emplode + Player on a larger subnet... [Re: wfaulk]
Roger
carpal tunnel

Registered: 18/01/2000
Posts: 5683
Loc: London, UK
Originally Posted By: wfaulk
Um, I don't think I really have a workaround for you, though, unfortunately.


One could write an empeg discovery proxy that runs on the work PC. When it sees the outgoing '?' packet, it can forward it to the correct subnet. The response will come back from the empeg, and emplode will pick that up correctly.
_________________________
-- roger

Top
#305756 - 05/01/2008 09:52 Re: Emplode + Player on a larger subnet... [Re: Roger]
peter
carpal tunnel

Registered: 13/07/2000
Posts: 4180
Loc: Cambridge, England
I'm pretty sure that, in order to work on multi-homed Windows hosts (where the all-ones address does something odd), Emplode sends to the broadcast address of each connected subnet. So that should be fine. Could we see the output of ifconfig, both on the PC and the Empeg, in the case when it doesn't work?

Edit: Or is that the Mercury software? If so then Emplode sends to the all-ones address. That should still work on any single-homed Windows host, though.

Second Edit (Director's Cut): That bit is all in the code we gave away in emptool, of course. So I looked. It sends to the all-ones address. And the Empeg's reply should be unicast. So something else is going wrong here. Can you ping the Empeg by IP address? Can you Emplode to it by specific IP address?

Third And Final Edit: no, it sends to the broadcast address of each interface. But to work around a Win95 bug, it derives the broadcast address from the netmask, rather than trusting the OS's broadcast address. This should however work with all CIDR subnets, including 10.1/16, as long as the netmask is correctly set. Besides which, the pre-CIDR netmask for 10.1.4.x is 10/8 anyway, not 10.1.4/24.

Peter


Edited by peter (05/01/2008 12:05)
Edit Reason: it was a long time ago

Top
#305764 - 05/01/2008 14:54 Re: Emplode + Player on a larger subnet... [Re: peter]
mlord
carpal tunnel

Registered: 29/08/2000
Posts: 14493
Loc: Canada
Also note that the last few editions of JEmplode do not perform empeg broadcast discovery at all -- the code mistakenly uses the Rio Karma protocol instead..

Top
#305769 - 05/01/2008 16:22 Re: Emplode + Player on a larger subnet... [Re: mlord]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
Originally Posted By: mlord
Yeah, what he said. If you're using DHCP, then it should be automatically correct.


I am and it is. 255.255.0.0
_________________________
Tony Fabris

Top
#305770 - 05/01/2008 16:50 Re: Emplode + Player on a larger subnet... [Re: wfaulk]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
Originally Posted By: wfaulk
I bet that when you say emplode can't see it that you mean it won't automatically find it on the network.


Actually, the problem is more insidious than that.

When I'm on .3.x and the player is on .4.x, even if I spec the player's IP address directly in the Emplode connection screen, it does not connect.

When we're both on the same subnet (.3 or .4), the network broadcast still doesn't work. But at least if I spec the IP address directly they work.

This is actually all a bit academic, as I'm sure if I asked our network guy if he could give me a couple of static reservations, he would. He's just in the office next to my cube. Doing this would solve my immediate problem, but I'm also interested in the general case, what causes it, and how one would work around it.
_________________________
Tony Fabris

Top
#305771 - 05/01/2008 16:52 Re: Emplode + Player on a larger subnet... [Re: peter]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
Thanks for that detailed information about the way the discovery code works, Peter.
_________________________
Tony Fabris

Top
#305772 - 05/01/2008 16:56 Re: Emplode + Player on a larger subnet... [Re: tfabris]
tman
carpal tunnel

Registered: 24/12/2001
Posts: 5528
Something is really strange with your network then. If you specify the empeg IP address in the settings for Emplode then it should always find it. I looked into this ages ago for that findempeg utility.

Top
#305773 - 05/01/2008 17:13 Re: Emplode + Player on a larger subnet... [Re: tman]
tfabris
carpal tunnel

Registered: 20/12/1999
Posts: 31597
Loc: Seattle, WA
That's an interesting point, I hadn't tried the findempeg utility on the work network yet. I'll have to give it a try and see if it works.
_________________________
Tony Fabris

Top
#305774 - 05/01/2008 17:32 Re: Emplode + Player on a larger subnet... [Re: tfabris]
peter
carpal tunnel

Registered: 13/07/2000
Posts: 4180
Loc: Cambridge, England
Originally Posted By: tfabris
Actually, the problem is more insidious than that.

When I'm on .3.x and the player is on .4.x, even if I spec the player's IP address directly in the Emplode connection screen, it does not connect.

In which case tman's right, there's something borken about your network. That's a direct TCP connect to a specific address, and if it doesn't work then the two hosts are not actually (in some sense) on the same subnet, and routing between the subnets is broken. (Or is via a zealous firewall that blocks Emplode's TCP port.)

What happens, in the .3-and-.4 case, if you then try and ping the Empeg? Or connect to another service (i.e. not Emplode -- say, Hijack's HTTP or FTP if you have that installed)? If you can ping it, traceroute it. What is the PC's routing table ("route" command on Linux, can't remember what it's called on Windows)?

Quote:
When we're both on the same subnet (.3 or .4), the network broadcast still doesn't work. But at least if I spec the IP address directly they work.

This is actually all a bit academic, as I'm sure if I asked our network guy if he could give me a couple of static reservations, he would. He's just in the office next to my cube. Doing this would solve my immediate problem, but I'm also interested in the general case, what causes it, and how one would work around it.

Sure, it's about the journey not the destination. There's a clear brownie-points difference between saying to the network guy "What's up with this .3.x and .4.x thing?" and saying "The way you've set this up to do well-wonky-thing-X is well wonky" smile

Peter

Top