| View previous topic :: View next topic |
| Author |
Message |
rikishipabst Guest
|
Posted: Wed Nov 02, 2005 2:42 am Post subject: Listener Connection Problem (OOPS Double Post/Reply) |
|
|
Hey,
sorry if this is totally off-base....
I am Running WIN Server 2003 Standard, with SAM3 as my engine. I use Icecast as our main media server also hosted on the same machine. I run Shoutcast basically for the extra listing and listeners. I have created m3u files and pls files to link from our webstie www.blueribbonradio.com to our media server (icecast). We use No-IP to create a static IP address.
If you check our site and try the WinAmp link you will notice that the client tries to find the source but then never plays it. Windows Media Player returns the file cannot be found error.
I have checked all of my Router, NAT, Windows Firewall and even Icecast.xml to make sure the port is wide open. They all are. The shoutcast server operates 10 port bases above the icecast and runs fine from the shoutcast website but for some reason Icecast will not allow incoming connections
Any help you can offer would be appreciated. |
|
| Back to top |
|
 |
karlH Code Warrior

Joined: 13 Jun 2005 Posts: 5476 Location: UK
|
Posted: Wed Nov 02, 2005 12:42 pm Post subject: |
|
|
it seems like no connection can be made at all, no response which would indicated either routing issue or a firewall dropping the packets. Verify that icecast is not using a bind-address setting.
What you need to to do a small test in which connection attempts are being made into the icecast and you monitor the network link, that way you can naorrow it down to the NAT or windows box.
karl. |
|
| Back to top |
|
 |
rikishipabst Guest
|
Posted: Wed Nov 02, 2005 6:08 pm Post subject: Tried That |
|
|
I have run some "network admin type" tests.
I first ran a test of all my other media servers, SHOUTcast and Windows Media Server. Both run off off my local machine just like Icecast2 should. I was able to connect to them by simply creating a *.asx file at work. Both worked great.
This means to me that the router is letting the listeners into the computer. I did a tracert and ping on my Icecast2 server as well and it was able to get through the router.
So I am thinking it was either the computer or Icecast2 at this point.
My next check was to verify the Windows Firewall was allowing the port to be accessed. It is wide open, and as the tracert/ping indicated allowing access to the port.
So at this point I am convinced it is the settings of the server. When opening the web interface it will not connect either.
On top of that when i access the stream from inside the LAN it works without any problems. Which to me means they do not have access from the Router but the Router is wide open.
I checked the <bind-address> like you suggested and it is still commented out.
Any other ideas as to what it could be? |
|
| Back to top |
|
 |
karlH Code Warrior

Joined: 13 Jun 2005 Posts: 5476 Location: UK
|
Posted: Wed Nov 02, 2005 9:02 pm Post subject: |
|
|
A really useful utility that you can use is ethereal, it can listen on the wire to see if the requests are coming through and going back out. Something has to be missing for at least a connection to work, it may be some NAT issue (wrong port/IP etc). The fact that local streaming is working indicates that icecast is running and listening on your internal IP so maybe ethereal can help you see if the request from outside of the NAT are getting to where they should be.
karl. |
|
| Back to top |
|
 |
rikishipabst Guest
|
Posted: Thu Nov 03, 2005 12:55 am Post subject: Still Not Getting It |
|
|
I guess I am a little confused....
NAT is not even enabled on the machine. And since SHOUTcast is working and so is Windows im not sure why Icecast isnt working. I had Icecast working perfectly on my XP machine but ever since upgrading to Server I cant get it to work right.
Maybe I'm Missing Something. |
|
| Back to top |
|
 |
karlH Code Warrior

Joined: 13 Jun 2005 Posts: 5476 Location: UK
|
Posted: Thu Nov 03, 2005 2:21 am Post subject: |
|
|
It's hard to say exactly what the problem is, I don't know exactly what you have configured, but from your description earlier your router is not doing what it's supposed to be doing with regard to connections coming in on that port of 3670. I'm guessing it's actually a NAT box and it's supposed to be forwarding connections to the internal windows box. You'll need to verify that is working (ethereal is a suitable app) because as you say, the internal connection to icecast is working and you are getting a stream, so it's not an icecast issue, just a routing issue.
karl. |
|
| Back to top |
|
 |
rikishipabst Guest
|
Posted: Thu Nov 03, 2005 3:22 am Post subject: Funny? |
|
|
I have a Linksys Router. It just has a simple Port Forward which is obviously on and working because its what its doing for shoutcast and windows. It doesnt even have NAT enabled. So it is processing the requests but as you said its hard to really describe everything I have configured especially when it comes to Windows settings. What I can do is post my Config File minus my passwords of course....
| Code: |
<icecast>
<limits>
<clients>100</clients>
<sources>6</sources>
<threadpool>5</threadpool>
<queue-size>524288</queue-size>
<client-timeout>30</client-timeout>
<header-timeout>15</header-timeout>
<source-timeout>10</source-timeout>
<!-- If enabled, this will provide a burst of data when a client
first connects, thereby significantly reducing the startup
time for listeners that do substantial buffering. However,
it also significantly increases latency between the source
client and listening client. For low-latency setups, you
might want to disable this. -->
<burst-on-connect>1</burst-on-connect>
<!-- same as burst-on-connect, but this allows for being more
specific on how much to burst. Most people won't need to
change from the default 64k. Applies to all mountpoints -->
<burst-size>65535</burst-size>
</limits>
<authentication>
<!-- Sources log in with username 'source' -->
<source-password>YOUCANTSEEME</source-password>
<!-- Relays log in username 'relay' -->
<relay-password>YOUCANTSEEME</relay-password>
<!-- Admin logs in with the username given below -->
<admin-user>admin</admin-user>
<admin-password>YOUCANTSEEME</admin-password>
</authentication>
<!-- Uncomment this if you want directory listings -->
<!--
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>http://dir.xiph.org/cgi-bin/yp-cgi</yp-url>
</directory>
<directory>
<yp-url-timeout>15</yp-url-timeout>
<yp-url>http://www.oddsock.org/cgi-bin/yp-cgi</yp-url>
</directory>
-->
<!-- This is the hostname other people will use to connect to your server.
It affects mainly the urls generated by Icecast for playlists and yp
listings. -->
<hostname>localhost</hostname>
<!-- You can use these two if you only want a single listener -->
<!-- <port>3670</port> -->
<!--<bind-address>127.0.0.1</bind-address>-->
<!-- You may have multiple <listener> elements -->
<listen-socket>
<port>3670</port>
<!-- <bind-address>127.0.0.1</bind-address> -->
</listen-socket>
<!--
<listen-socket>
<port>3670</port>
</listen-socket>
-->
<!--<master-server>127.0.0.1</master-server>-->
<!--<master-server-port>8001</master-server-port>-->
<!--<master-update-interval>120</master-update-interval>-->
<!--<master-password>hackme</master-password>-->
<!-- setting this makes all relays on-demand unless overridden, this is
useful for master relays which do not have <relay> definitions here.
The default is 0 -->
<!--<relays-on-demand>1</relays-on-demand>-->
<!--
<relay>
<server>127.0.0.1</server>
<port>8001</port>
<mount>/example.ogg</mount>
<local-mount>/different.ogg</local-mount>
<on-demand>0</on-demand>
<relay-shoutcast-metadata>0</relay-shoutcast-metadata>
</relay>
-->
<!-- Only define a <mount> section if you want to use advanced options,
like alternative usernames or passwords
<mount>
<mount-name>/example-complex.ogg</mount-name>
<username>othersource</username>
<password>hackmemore</password>
<max-listeners>1</max-listeners>
<dump-file>/tmp/dump-example1.ogg</dump-file>
<burst-size>65536</burst-size>
<fallback-mount>/example2.ogg</fallback-mount>
<fallback-override>1</fallback-override>
<fallback-when-full>1</fallback-when-full>
<intro>/example_intro.ogg</intro>
<hidden>1</hidden>
<no-yp>1</no-yp>
<authentication type="htpasswd">
<option name="filename" value="myauth"/>
<option name="allow_duplicate_users" value="0"/>
</authentication>
<on-connect>/home/icecast/bin/stream-start</on-connect>
<on-disconnect>/home/icecast/bin/stream-stop</on-disconnect>
</mount>
<mount>
<mount-name>/auth_example.ogg</mount-name>
<authentication type="url">
<option name="mount_add" value="http://myauthserver.net/notify_mount.php"/>
<option name="mount_remove" value="http://myauthserver.net/notify_mount.php"/>
<option name="listener_add" value="http://myauthserver.net/notify_listener.php"/>
<option name="listener_remove" value="http://myauthserver.net/notify_listener.php"/>
</authentication>
</mount>
-->
<fileserve>1</fileserve>
<!-- set the mountpoint for a shoutcast source to use, the default if not
specified is /stream but you can change it here if an alternative is
wanted or an extension is required
<shoutcast-mount>/live.nsv</shoutcast-mount>
-->
<paths>
<!-- basedir is only used if chroot is enabled -->
<basedir>./</basedir>
<!-- Note that if <chroot> is turned on below, these paths must both
be relative to the new root, not the original root -->
<logdir>./logs</logdir>
<webroot>./web</webroot>
<adminroot>./admin</adminroot>
<!-- <pidfile>./icecast.pid</pidfile> -->
<!-- Aliases: treat requests for 'source' path as being for 'dest' path
May be made specific to a port or bound address using the "port"
and "bind-address" attributes.
-->
<!--
<alias source="/foo" dest="/bar"/>
-->
<!-- Aliases: can also be used for simple redirections as well,
this example will redirect all requests for http://server:port/ to
the status page
-->
<alias source="/" dest="/status.xsl"/>
</paths>
<logging>
<accesslog>access.log</accesslog>
<errorlog>error.log</errorlog>
<!-- <playlistlog>playlist.log</playlistlog> -->
<loglevel>4</loglevel> <!-- 4 Debug, 3 Info, 2 Warn, 1 Error -->
</logging>
<security>
<chroot>0</chroot>
<!--
<changeowner>
<user>nobody</user>
<group>nogroup</group>
</changeowner>
-->
</security>
</icecast> |
By the way I appreciate all of your help and responses to my questions. You have been more than instrumental in helping me out. Many thanks![/code] |
|
| Back to top |
|
 |
karlH Code Warrior

Joined: 13 Jun 2005 Posts: 5476 Location: UK
|
Posted: Thu Nov 03, 2005 11:06 am Post subject: |
|
|
The key things in the xml I see are the port being 3670 (I'll assume that is ok) and the <hostname> is set incorrectly really (should be the .no-ip.org name not localhost)
Have you used ethereal yet to determine if the incoming packets are correct
(address, port etc). I would agree that a working shoutcast on port 3670 and 3671 would indicate that icecast should also work on those same ports, but again without more information about your network it's impossible to say where the problem is.
karl. |
|
| Back to top |
|
 |
rikishipabst Guest
|
Posted: Thu Nov 03, 2005 12:29 pm Post subject: Working on It |
|
|
| Ok I have changed the hostname like you suggested and later today I will have a friend of mine try to access the stream externally and capture it with ethereal. I'll let you know what the results are. |
|
| Back to top |
|
 |
|