Is Viber using TCP for VoIP?
up vote
0
down vote
favorite
I'm currently on a guest WiFi where all ports except those for surfing the web (80, 443, 8080) and mailing (25, 110, 143, 465, 587, 993, 995) are blocked (3128 seems to be working too).
I tried to place a FaceTime call on my iPhone but that didn't work, which made me assume that UDP is blocked too. However, the Viber app was able to successfully connect and start a video call with decent quality/lag.
My question is now, is Viber using TCP for VoIP or how is this possible?
networking firewall voip viber
add a comment |
up vote
0
down vote
favorite
I'm currently on a guest WiFi where all ports except those for surfing the web (80, 443, 8080) and mailing (25, 110, 143, 465, 587, 993, 995) are blocked (3128 seems to be working too).
I tried to place a FaceTime call on my iPhone but that didn't work, which made me assume that UDP is blocked too. However, the Viber app was able to successfully connect and start a video call with decent quality/lag.
My question is now, is Viber using TCP for VoIP or how is this possible?
networking firewall voip viber
More then likely; Yes; FaceTime likely just uses it also but on a port that's blocked. Viber likely just uses 80/443. Skype also uses TCP but its underline protocol isn't published
– Ramhound
Dec 29 '16 at 14:31
1
Did your "blocked ports" test actually include UDP? If you only tested TCP ports, that says nothing about UDP availability, as the two protocols have their own port assignments and can be filtered independently. (Some firewalls offer a "TCP/UDP" macro but that's all it is.)
– grawity
Dec 29 '16 at 14:32
@grawity That's a good point. I didn't find a test server to test it against for UDP, so my test was limited to TCP (via portquiz.net)
– comfreak
Dec 29 '16 at 14:36
@Ramhound See my answer for the ports Viber actually requires (more than just 80/443).
– DavidPostill♦
Dec 29 '16 at 14:53
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I'm currently on a guest WiFi where all ports except those for surfing the web (80, 443, 8080) and mailing (25, 110, 143, 465, 587, 993, 995) are blocked (3128 seems to be working too).
I tried to place a FaceTime call on my iPhone but that didn't work, which made me assume that UDP is blocked too. However, the Viber app was able to successfully connect and start a video call with decent quality/lag.
My question is now, is Viber using TCP for VoIP or how is this possible?
networking firewall voip viber
I'm currently on a guest WiFi where all ports except those for surfing the web (80, 443, 8080) and mailing (25, 110, 143, 465, 587, 993, 995) are blocked (3128 seems to be working too).
I tried to place a FaceTime call on my iPhone but that didn't work, which made me assume that UDP is blocked too. However, the Viber app was able to successfully connect and start a video call with decent quality/lag.
My question is now, is Viber using TCP for VoIP or how is this possible?
networking firewall voip viber
networking firewall voip viber
asked Dec 29 '16 at 14:29
comfreak
3871620
3871620
More then likely; Yes; FaceTime likely just uses it also but on a port that's blocked. Viber likely just uses 80/443. Skype also uses TCP but its underline protocol isn't published
– Ramhound
Dec 29 '16 at 14:31
1
Did your "blocked ports" test actually include UDP? If you only tested TCP ports, that says nothing about UDP availability, as the two protocols have their own port assignments and can be filtered independently. (Some firewalls offer a "TCP/UDP" macro but that's all it is.)
– grawity
Dec 29 '16 at 14:32
@grawity That's a good point. I didn't find a test server to test it against for UDP, so my test was limited to TCP (via portquiz.net)
– comfreak
Dec 29 '16 at 14:36
@Ramhound See my answer for the ports Viber actually requires (more than just 80/443).
– DavidPostill♦
Dec 29 '16 at 14:53
add a comment |
More then likely; Yes; FaceTime likely just uses it also but on a port that's blocked. Viber likely just uses 80/443. Skype also uses TCP but its underline protocol isn't published
– Ramhound
Dec 29 '16 at 14:31
1
Did your "blocked ports" test actually include UDP? If you only tested TCP ports, that says nothing about UDP availability, as the two protocols have their own port assignments and can be filtered independently. (Some firewalls offer a "TCP/UDP" macro but that's all it is.)
– grawity
Dec 29 '16 at 14:32
@grawity That's a good point. I didn't find a test server to test it against for UDP, so my test was limited to TCP (via portquiz.net)
– comfreak
Dec 29 '16 at 14:36
@Ramhound See my answer for the ports Viber actually requires (more than just 80/443).
– DavidPostill♦
Dec 29 '16 at 14:53
More then likely; Yes; FaceTime likely just uses it also but on a port that's blocked. Viber likely just uses 80/443. Skype also uses TCP but its underline protocol isn't published
– Ramhound
Dec 29 '16 at 14:31
More then likely; Yes; FaceTime likely just uses it also but on a port that's blocked. Viber likely just uses 80/443. Skype also uses TCP but its underline protocol isn't published
– Ramhound
Dec 29 '16 at 14:31
1
1
Did your "blocked ports" test actually include UDP? If you only tested TCP ports, that says nothing about UDP availability, as the two protocols have their own port assignments and can be filtered independently. (Some firewalls offer a "TCP/UDP" macro but that's all it is.)
– grawity
Dec 29 '16 at 14:32
Did your "blocked ports" test actually include UDP? If you only tested TCP ports, that says nothing about UDP availability, as the two protocols have their own port assignments and can be filtered independently. (Some firewalls offer a "TCP/UDP" macro but that's all it is.)
– grawity
Dec 29 '16 at 14:32
@grawity That's a good point. I didn't find a test server to test it against for UDP, so my test was limited to TCP (via portquiz.net)
– comfreak
Dec 29 '16 at 14:36
@grawity That's a good point. I didn't find a test server to test it against for UDP, so my test was limited to TCP (via portquiz.net)
– comfreak
Dec 29 '16 at 14:36
@Ramhound See my answer for the ports Viber actually requires (more than just 80/443).
– DavidPostill♦
Dec 29 '16 at 14:53
@Ramhound See my answer for the ports Viber actually requires (more than just 80/443).
– DavidPostill♦
Dec 29 '16 at 14:53
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
Is Viber using TCP for VoIP?
Viber is using UPD and not TCP for VoIP traffic. TCP is used for Text Messaging.
Viber uses RTP (and SRTP when encrypted). RTP is mostly implemented on UDP as it is a real time protocol.
The RTP stream of the audio or audio/video call is converted to SRTP and encrypted via Salsa20 algorithm using the session key.
Source Viber Encryption Overview
The use of both TCP and UDP is confirmed in Viber Communication Security unscramble the scrambled Contents, which used tcpdump
to generate .pcap
files to analyse the Viber data traffic:
This seemed like a good starting point to get some results so we filtered the data to get a one way
voice stream using the following command:
tshark -r long-call.pcap -w long-call-oneway.pcap udp.dstport == 5243
Here we select only the UDP packets with the destination port for the Viber service so it is only
originating voice traffic.
...
Besides the voice calls that Viber enables the user to make, it also allows them to send and receive
text messages. This functionality uses some specialized tcp-based protocol to connect to the server
and exchange messages. Decoding this stream has not been a priority within this project and there
wasn’t any time left to research this further.
What ports does Viber use?
In order for Viber Desktop to run on your computer, the following
ports must be open for all addresses for both TCP and UDP:
- 5242
- 4244
- 5243
- 9785
- 80
- 443
Source Opening ports for Viber Desktop
So in other words, if UDP is blocked, no call should be possible and therefore UDP has to be working on the guest network on the ports Viber is using?
– comfreak
Dec 29 '16 at 14:45
I think that is correct. See updated answer with a list of required ports (both UDP and TCP are required on these ports).
– DavidPostill♦
Dec 29 '16 at 14:47
But my successful call also means that Viber only requires 80 or 443 (or both) to work (for the TCP side at least). From what I read on the linked websites it seems that RTP is usually implemented on UDP but that doesn't rule out that Viber doesn't have a backup-service on TCP. I would test for UDP ports but I don't know any target to test against with nmap.
– comfreak
Dec 29 '16 at 14:58
Try a UDP Speed Test - that should tell you if UDP is blocked :)
– DavidPostill♦
Dec 29 '16 at 15:03
1
uPNP may be open allowing to use some UDP ports.
– LPChip
Dec 29 '16 at 15:09
|
show 6 more comments
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1161390%2fis-viber-using-tcp-for-voip%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
Is Viber using TCP for VoIP?
Viber is using UPD and not TCP for VoIP traffic. TCP is used for Text Messaging.
Viber uses RTP (and SRTP when encrypted). RTP is mostly implemented on UDP as it is a real time protocol.
The RTP stream of the audio or audio/video call is converted to SRTP and encrypted via Salsa20 algorithm using the session key.
Source Viber Encryption Overview
The use of both TCP and UDP is confirmed in Viber Communication Security unscramble the scrambled Contents, which used tcpdump
to generate .pcap
files to analyse the Viber data traffic:
This seemed like a good starting point to get some results so we filtered the data to get a one way
voice stream using the following command:
tshark -r long-call.pcap -w long-call-oneway.pcap udp.dstport == 5243
Here we select only the UDP packets with the destination port for the Viber service so it is only
originating voice traffic.
...
Besides the voice calls that Viber enables the user to make, it also allows them to send and receive
text messages. This functionality uses some specialized tcp-based protocol to connect to the server
and exchange messages. Decoding this stream has not been a priority within this project and there
wasn’t any time left to research this further.
What ports does Viber use?
In order for Viber Desktop to run on your computer, the following
ports must be open for all addresses for both TCP and UDP:
- 5242
- 4244
- 5243
- 9785
- 80
- 443
Source Opening ports for Viber Desktop
So in other words, if UDP is blocked, no call should be possible and therefore UDP has to be working on the guest network on the ports Viber is using?
– comfreak
Dec 29 '16 at 14:45
I think that is correct. See updated answer with a list of required ports (both UDP and TCP are required on these ports).
– DavidPostill♦
Dec 29 '16 at 14:47
But my successful call also means that Viber only requires 80 or 443 (or both) to work (for the TCP side at least). From what I read on the linked websites it seems that RTP is usually implemented on UDP but that doesn't rule out that Viber doesn't have a backup-service on TCP. I would test for UDP ports but I don't know any target to test against with nmap.
– comfreak
Dec 29 '16 at 14:58
Try a UDP Speed Test - that should tell you if UDP is blocked :)
– DavidPostill♦
Dec 29 '16 at 15:03
1
uPNP may be open allowing to use some UDP ports.
– LPChip
Dec 29 '16 at 15:09
|
show 6 more comments
up vote
0
down vote
Is Viber using TCP for VoIP?
Viber is using UPD and not TCP for VoIP traffic. TCP is used for Text Messaging.
Viber uses RTP (and SRTP when encrypted). RTP is mostly implemented on UDP as it is a real time protocol.
The RTP stream of the audio or audio/video call is converted to SRTP and encrypted via Salsa20 algorithm using the session key.
Source Viber Encryption Overview
The use of both TCP and UDP is confirmed in Viber Communication Security unscramble the scrambled Contents, which used tcpdump
to generate .pcap
files to analyse the Viber data traffic:
This seemed like a good starting point to get some results so we filtered the data to get a one way
voice stream using the following command:
tshark -r long-call.pcap -w long-call-oneway.pcap udp.dstport == 5243
Here we select only the UDP packets with the destination port for the Viber service so it is only
originating voice traffic.
...
Besides the voice calls that Viber enables the user to make, it also allows them to send and receive
text messages. This functionality uses some specialized tcp-based protocol to connect to the server
and exchange messages. Decoding this stream has not been a priority within this project and there
wasn’t any time left to research this further.
What ports does Viber use?
In order for Viber Desktop to run on your computer, the following
ports must be open for all addresses for both TCP and UDP:
- 5242
- 4244
- 5243
- 9785
- 80
- 443
Source Opening ports for Viber Desktop
So in other words, if UDP is blocked, no call should be possible and therefore UDP has to be working on the guest network on the ports Viber is using?
– comfreak
Dec 29 '16 at 14:45
I think that is correct. See updated answer with a list of required ports (both UDP and TCP are required on these ports).
– DavidPostill♦
Dec 29 '16 at 14:47
But my successful call also means that Viber only requires 80 or 443 (or both) to work (for the TCP side at least). From what I read on the linked websites it seems that RTP is usually implemented on UDP but that doesn't rule out that Viber doesn't have a backup-service on TCP. I would test for UDP ports but I don't know any target to test against with nmap.
– comfreak
Dec 29 '16 at 14:58
Try a UDP Speed Test - that should tell you if UDP is blocked :)
– DavidPostill♦
Dec 29 '16 at 15:03
1
uPNP may be open allowing to use some UDP ports.
– LPChip
Dec 29 '16 at 15:09
|
show 6 more comments
up vote
0
down vote
up vote
0
down vote
Is Viber using TCP for VoIP?
Viber is using UPD and not TCP for VoIP traffic. TCP is used for Text Messaging.
Viber uses RTP (and SRTP when encrypted). RTP is mostly implemented on UDP as it is a real time protocol.
The RTP stream of the audio or audio/video call is converted to SRTP and encrypted via Salsa20 algorithm using the session key.
Source Viber Encryption Overview
The use of both TCP and UDP is confirmed in Viber Communication Security unscramble the scrambled Contents, which used tcpdump
to generate .pcap
files to analyse the Viber data traffic:
This seemed like a good starting point to get some results so we filtered the data to get a one way
voice stream using the following command:
tshark -r long-call.pcap -w long-call-oneway.pcap udp.dstport == 5243
Here we select only the UDP packets with the destination port for the Viber service so it is only
originating voice traffic.
...
Besides the voice calls that Viber enables the user to make, it also allows them to send and receive
text messages. This functionality uses some specialized tcp-based protocol to connect to the server
and exchange messages. Decoding this stream has not been a priority within this project and there
wasn’t any time left to research this further.
What ports does Viber use?
In order for Viber Desktop to run on your computer, the following
ports must be open for all addresses for both TCP and UDP:
- 5242
- 4244
- 5243
- 9785
- 80
- 443
Source Opening ports for Viber Desktop
Is Viber using TCP for VoIP?
Viber is using UPD and not TCP for VoIP traffic. TCP is used for Text Messaging.
Viber uses RTP (and SRTP when encrypted). RTP is mostly implemented on UDP as it is a real time protocol.
The RTP stream of the audio or audio/video call is converted to SRTP and encrypted via Salsa20 algorithm using the session key.
Source Viber Encryption Overview
The use of both TCP and UDP is confirmed in Viber Communication Security unscramble the scrambled Contents, which used tcpdump
to generate .pcap
files to analyse the Viber data traffic:
This seemed like a good starting point to get some results so we filtered the data to get a one way
voice stream using the following command:
tshark -r long-call.pcap -w long-call-oneway.pcap udp.dstport == 5243
Here we select only the UDP packets with the destination port for the Viber service so it is only
originating voice traffic.
...
Besides the voice calls that Viber enables the user to make, it also allows them to send and receive
text messages. This functionality uses some specialized tcp-based protocol to connect to the server
and exchange messages. Decoding this stream has not been a priority within this project and there
wasn’t any time left to research this further.
What ports does Viber use?
In order for Viber Desktop to run on your computer, the following
ports must be open for all addresses for both TCP and UDP:
- 5242
- 4244
- 5243
- 9785
- 80
- 443
Source Opening ports for Viber Desktop
edited Dec 29 '16 at 15:47
answered Dec 29 '16 at 14:42
DavidPostill♦
103k25220255
103k25220255
So in other words, if UDP is blocked, no call should be possible and therefore UDP has to be working on the guest network on the ports Viber is using?
– comfreak
Dec 29 '16 at 14:45
I think that is correct. See updated answer with a list of required ports (both UDP and TCP are required on these ports).
– DavidPostill♦
Dec 29 '16 at 14:47
But my successful call also means that Viber only requires 80 or 443 (or both) to work (for the TCP side at least). From what I read on the linked websites it seems that RTP is usually implemented on UDP but that doesn't rule out that Viber doesn't have a backup-service on TCP. I would test for UDP ports but I don't know any target to test against with nmap.
– comfreak
Dec 29 '16 at 14:58
Try a UDP Speed Test - that should tell you if UDP is blocked :)
– DavidPostill♦
Dec 29 '16 at 15:03
1
uPNP may be open allowing to use some UDP ports.
– LPChip
Dec 29 '16 at 15:09
|
show 6 more comments
So in other words, if UDP is blocked, no call should be possible and therefore UDP has to be working on the guest network on the ports Viber is using?
– comfreak
Dec 29 '16 at 14:45
I think that is correct. See updated answer with a list of required ports (both UDP and TCP are required on these ports).
– DavidPostill♦
Dec 29 '16 at 14:47
But my successful call also means that Viber only requires 80 or 443 (or both) to work (for the TCP side at least). From what I read on the linked websites it seems that RTP is usually implemented on UDP but that doesn't rule out that Viber doesn't have a backup-service on TCP. I would test for UDP ports but I don't know any target to test against with nmap.
– comfreak
Dec 29 '16 at 14:58
Try a UDP Speed Test - that should tell you if UDP is blocked :)
– DavidPostill♦
Dec 29 '16 at 15:03
1
uPNP may be open allowing to use some UDP ports.
– LPChip
Dec 29 '16 at 15:09
So in other words, if UDP is blocked, no call should be possible and therefore UDP has to be working on the guest network on the ports Viber is using?
– comfreak
Dec 29 '16 at 14:45
So in other words, if UDP is blocked, no call should be possible and therefore UDP has to be working on the guest network on the ports Viber is using?
– comfreak
Dec 29 '16 at 14:45
I think that is correct. See updated answer with a list of required ports (both UDP and TCP are required on these ports).
– DavidPostill♦
Dec 29 '16 at 14:47
I think that is correct. See updated answer with a list of required ports (both UDP and TCP are required on these ports).
– DavidPostill♦
Dec 29 '16 at 14:47
But my successful call also means that Viber only requires 80 or 443 (or both) to work (for the TCP side at least). From what I read on the linked websites it seems that RTP is usually implemented on UDP but that doesn't rule out that Viber doesn't have a backup-service on TCP. I would test for UDP ports but I don't know any target to test against with nmap.
– comfreak
Dec 29 '16 at 14:58
But my successful call also means that Viber only requires 80 or 443 (or both) to work (for the TCP side at least). From what I read on the linked websites it seems that RTP is usually implemented on UDP but that doesn't rule out that Viber doesn't have a backup-service on TCP. I would test for UDP ports but I don't know any target to test against with nmap.
– comfreak
Dec 29 '16 at 14:58
Try a UDP Speed Test - that should tell you if UDP is blocked :)
– DavidPostill♦
Dec 29 '16 at 15:03
Try a UDP Speed Test - that should tell you if UDP is blocked :)
– DavidPostill♦
Dec 29 '16 at 15:03
1
1
uPNP may be open allowing to use some UDP ports.
– LPChip
Dec 29 '16 at 15:09
uPNP may be open allowing to use some UDP ports.
– LPChip
Dec 29 '16 at 15:09
|
show 6 more comments
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1161390%2fis-viber-using-tcp-for-voip%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
More then likely; Yes; FaceTime likely just uses it also but on a port that's blocked. Viber likely just uses 80/443. Skype also uses TCP but its underline protocol isn't published
– Ramhound
Dec 29 '16 at 14:31
1
Did your "blocked ports" test actually include UDP? If you only tested TCP ports, that says nothing about UDP availability, as the two protocols have their own port assignments and can be filtered independently. (Some firewalls offer a "TCP/UDP" macro but that's all it is.)
– grawity
Dec 29 '16 at 14:32
@grawity That's a good point. I didn't find a test server to test it against for UDP, so my test was limited to TCP (via portquiz.net)
– comfreak
Dec 29 '16 at 14:36
@Ramhound See my answer for the ports Viber actually requires (more than just 80/443).
– DavidPostill♦
Dec 29 '16 at 14:53