turn server installation using cygwin on windows 7

951 views
Skip to first unread message

Aisha Siddiqui

unread,
Apr 26, 2017, 10:16:24 AM4/26/17
to TURN Server (Open-Source project)

Hi all,

I have followed the steps as provided in the below link https://www.webrtc-experiment.com/docs/TURN-server-installation-guide.html#windows

The issue is i am unable to run the turn server on my public ip, the log file shows error

Wrong user account, 

Trying to bind DTLS/UDP listener socket to address 192.168.8.100:3478 although the user credential and ip's are same as set in turnserver.conf file further i have not provided the '192.168.8.100' as this is not my public IP

Please help, how can i resolve the stated issue 

shakeeb

unread,
Apr 27, 2017, 11:43:58 PM4/27/17
to TURN Server (Open-Source project)
Hi Aisha,

I think you have not configured turnserver.conf properly. Can you please attach your configuration file and output of ipconfig on the system you are trying to install.

For performance reason, it is not recommended to run turnserver on cygwin but it is easy to install and run on cygwin.

>> i have not provided the '192.168.8.100' as this is not my public IP

If you don't configure your listening IP then turnserver will discover your IP addresses and listen on them. If you have natted Public IP address you need to configure 

in a different way.

>>I have followed the steps as provided in the below link https://www.webrtc-experiment.com/docs/TURN-server-installation-guide.html#windows

I think the following changes are not required for turnserver-3.2.3.8.tar.gz or updated version. ( my installation is working properly without this change )

Edit "na_turn_ioaddr.c" and comment line number "169":

vi /turnserver-1.8.4.0/src/client/na_turn_ioaddr.c

# commenting line number #169
# addr->s4.sin_len = sizeof(struct sockaddr_in);

Thanks,
Shakeeb

Aisha Siddiqui

unread,
Apr 28, 2017, 2:50:05 AM4/28/17
to TURN Server (Open-Source project)
Hi shakeeb,
I am unable to access the remote stream in case of cross networks, attached are the files you have asked for please have a look at them. 
Thanks,
Aisha
turnserver.conf
turn server.PNG
ipconfig.PNG

Nazmus Shakeeb

unread,
Apr 28, 2017, 4:50:06 AM4/28/17
to TURN Server (Open-Source project)
Hi Aisha,

Your PC doesn't have a public IP address. Any address starting with 10.x.x.x can not be a public IP address as it is assigned for private use 

https://tools.ietf.org/html/rfc1918. If you search "what is my ip" in the google, you should get a different IP address. ( It will always give you public IP ) 

You can run turnserver on a private IP address only when it has one to one mapping ( like DMZ ) to a Public IP address.

Your ISP can confirm you if you have such mapping. You can also test by running a web server on your PC and access remotely using the mapped Public IP address.   

When configuring turnserver behind NAT ( having one to one mapping ) you must need to configure  "external-ip=x.x.x.x"  properly in turnserver.conf.

Thanks,
Shakeeb 
Message has been deleted

Aisha Siddiqui

unread,
Apr 28, 2017, 6:52:08 AM4/28/17
to TURN Server (Open-Source project)
@shakeeb; I have changed the turnserver.conf file with a public IP that is available for listening on port 4378, still no remote peer streaming is shown despite its stream blob is created and attached to remote video element.

On Friday, April 28, 2017 at 3:18:18 PM UTC+5, Aisha Siddiqui wrote:
I have also tested on my public IP but the server just stop running stating DTLS cannot bind to socket address
Can i use port 80 to configure turn
Thanks :)
turnserver.conf

Nazmus Shakeeb

unread,
Apr 28, 2017, 7:07:23 AM4/28/17
to TURN Server (Open-Source project)
Can you try to get allocation by the following URL?  Can you see the relay candidates? You have to add your turnserver like turn:<ip address>  then click gather candidate.

Aisha Siddiqui

unread,
Apr 28, 2017, 8:09:26 AM4/28/17
to TURN Server (Open-Source project)
Yes the candidate signals fire and shows the connected clients
The flow is:
1)Create peer connection using the turn server (giving the IP:port, credential,user) 
2)Attaching my local stream
3)On Call, initiating offer i.e. setting local description for local peer connection and remote description for remote peer connection 
4)On Answer, setting local description for remote peer connection and remote description for local peer connection 
5)In parallel storing the candidate in a temporary array then after SDP received setting the candidates to the connection

I am using adapter.js and SignalR for signalling server. The app is working fine in local network and the console also shows the same log for both cross and same network. I am not getting what might be wrong that is causing this issue

I'll see the implementation suggested.. Thanks 
Reply all
Reply to author
Forward
0 new messages