View Single Post
Unread 10-08-2007, 02:03 PM   #1
affinity
 
Join Date: Apr 2006
Posts: 799
Thanks: 66
Thanked 61 Times in 44 Posts
affinity will become famous soon enough
Default Skype through Voxalot

Okay, now that I got your attention I need to make it clear that I am not a Skype supporter at all, but I had some fun working through this and thought it was worth sharing.

First off, Skype has a nasty 'feature' that uses P2P technology to potentially hijack your broadband connection and use up your download quota (and upload if you get charged for this) as it sees fit. This is a problem known as you becoming a 'supernode'. Whilst this doesn't happen to everyone, the user otherwise has no control over this normally....

I believe that it is possible to stop the supernode issue, but I cannot guarantee that the method actually works.

How do you stop supernode I hear you ask, well it is like this (assuming Windows XP, other options for other OS I expect):
- enable firewall [better more than Windows inbuilt one]
- within Windows XP firewall, disable exceptions for Skype as an administrator user
- use Skype (and other software mentioned below) ONLY as a non-administrator user that has no rights to adjust the firewall settings ["run as" less privileged user works fine].
- the reference for this:
Skype Usage Policy at Fermilab

NEVER run Skype as a user with admin privileges as it will always adjust the firewall settings to enable supernode to work again.


Now some more juicy info.

NCH Software has a nifty product [pay for product, but can be trialled first] called "Uplink Skype2SIP", among other products. Available here:
http://www.nch.com.au/skypetosip/uplinksetup.exe

NB: you do not need their Axon server or any other products for this to work, although the Axon server allows you to call a number of Skype users more easily via a software phone.

Install the NCH software as an administrator. Install Skype as an administrator too if it isn't installed -- adjust the firewall settings as required..... (remove exceptions as above).

Create a special non-privileged Windows user [ie has no admin rights], work with this user ONLY for testing purposes.

Login as the special Windows user and run "Uplink Skype2SIP". This can be configured fairly easily as described here (requires Uplink software installed first):
file:///C:/Program%20Files/NCH%20Swi...elp/using.html
- note section "Using Uplink without a PBX".

When the secondary Voxalot account is called, the uplink software will call the Skype user that you entered using the Skype software (you enable uplink to use Skype the first time through testing). Any calls via Skype to you are redirected via uplink to your normal Voxalot account [setup with SIP URI, actually this can be any valid SIP URI].

Once you have everything running properly, you should adjust the special Windows user you created for Skype use so that it doesn't belong to the 'users' group -- this will stop it showing on the login screen.

As your normal Windows user, you can right click on the uplink icon and do "run as" using the special Windows user. This will start the uplink program, which in turn starts Skype under the same permissions.

You can also set up the uplink product to run as a service in Windows; it too MUST use the special Windows user only (so as, hopefully, to avoid supernode).

There are at least a couple of problems with the above setup. One being that you can only call one particular Skype account via the secondary voxalot account; however, I have a work around for that too. The second problem is that all this does require use of the actual Skype software and multiple calls b/w Skype and SIP may cause too much latency and additional overhead that requires suitable bandwidth to contend with.

Here is the fix to allow multiple users to be called via the secondary voxalot account (this code assumes everything is setup as a service, if it isn't, then you need to adjust the settings, quit the program completely and restart it):

Windows CMD file -- pass the Skype call to username as the only parameter:
Code:
@echo off
echo Hello, setting Skype call to user as %1
net stop uplinkservice
set filex=uplink-skype2sip.reg
echo Windows Registry Editor Version 5.00                            >  %filex%
echo [HKEY_LOCAL_MACHINE\SOFTWARE\NCH Swift Sound\Uplink\settings]   >> %filex%
echo "SkypeNumberToDial"="%1"                                        >> %filex%
regedit /s %filex%
net start uplinkservice
Now you just need multiple shortcuts, one per each Skype account you might call. Once the service has restarted, the new settings will be active.

One major benefit (and the driving force behind the works), of the above working set up is that you can call to Skype users using your standard SIP based phone AND anybody calling your Skype account will be re-directed to your SIP phone! There is no need to use any proprietary Skype hardware or a handset in Windows (unless you use that handset for a SIP based phone).

Of course, as Skype uses P2P technology as it's basis for operation, it may have issues with any ISP that deliberately shapes P2P data and this too can effect your Skype experience.

I must re-iterate that I am far from a Skype supporter and perhaps this thread might cause a few Skype users to quit use of Skype as most users are completely unaware of the evil nature of the supernode feature. However, as a side effect of this thread, they might benefit from the information above and possibly subvert the use of supernode (assuming that actually proves to be possible).

Last edited by affinity; 10-08-2007 at 03:03 PM.
affinity is offline   Reply With Quote