Servers - VoIP.ms Wiki

Check out our YouTube channel to watch our simple tutorials that will help you set up most of our features.

Servers

From VoIP.ms Wiki

(Difference between revisions)
Jump to: navigation, search
[quality revision][quality revision]
(What is a Ping?)
 
(14 intermediate revisions not shown)
Line 1: Line 1:
-
[[File:ChooseServerImg.png|thumb|none|1280px|VoIP.ms servers]]
+
{| cellspacing="0" style="width: 100%; background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%); border: 1px solid #e2e8f0; border-radius: 8px; padding: 35px; margin-bottom: 25px; box-shadow: 0 1px 3px rgba(0,0,0,0.05);"
-
 
+
-
 
+
-
{| class="wikitable"
+
-
|+
+
|-
|-
-
! Article en Français !! Artículo en Español
+
| style="text-align: center;" |
-
|-
+
-
| [https://wiki.voip.ms/article/Choisir_un_serveur Français] ||
+
-
[https://wiki.voip.ms/article/Elegir_servidor Español]
+
-
|}
+
 +
<div style="font-size: 2.8em; font-weight: 200; color: #1e293b; margin-bottom: 15px; letter-spacing: -2px;">Choosing a Server with VoIP.ms</div>
 +
<div style="font-size: 1rem; color: #64748b; margin-bottom: 15px;">
 +
VoIP.ms operates servers across North America and internationally. Pick the one closest to you.
 +
</div>
 +
<div style="font-size: 0.9rem; color: #94a3b8;">
 +
'''[https://wiki.voip.ms/article/Choisir_un_serveur 🇨🇦 Français]''' &nbsp;•&nbsp; '''[https://wiki.voip.ms/article/Elegir_servidor 🇲🇽 Español]'''
 +
</div>
-
= Choosing a Server =
+
|}
-
[http://www.voip.ms VoIP.ms] offers many different servers, but which one should you choose? To put it simple, you can use the server closest to your location. Although that doesn't mean that a server further from your location will not work accordingly. For example, if you are located in Chicago, but you wish to use our Washington server, you will usually get good results. This entirely depends on the path taken by your internet service provider among many other reasons. Although the right rule of thumb is to use the server closer to you.
+
{| cellspacing="0" style="width: 100%; background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%); border: 1px solid #fca5a5; border-radius: 8px; padding: 25px; margin: 25px 0; box-shadow: 0 2px 10px rgba(248, 113, 113, 0.1);"
 +
|-
 +
| style="text-align: left;" |
 +
<div style="font-size: 1.1em; font-weight: 500; color: #b91c1c; margin-bottom: 15px;">'''How to choose'''</div>
-
'''Note:''' Make sure that your SIP/IAX device and your phone number are pointing to the same server.  
+
Use the server geographically closest to your physical location. Closer servers mean lower latency, which translates to better call quality with less delay and echo. A server further away will still work, but proximity is the right starting point.
-
=== IPs ===
+
Your device registers to the chosen server as well as your DID (phone number). You will notice that your DID also has a Point of Presence (POP) setting. '''Both must be set to the same server'''. If they don't match, inbound calls will not reach your device. Set your DID Point of Presence under [https://www.voip.ms/m/managedid.php DID Numbers → Manage DIDs → Edit].
-
<div><ul>
+
|}
-
<li style="display: inline-block; vertical-align:top;">
+
-
'''Canada'''
+
-
*Montreal 1, QC    ('''montreal.voip.ms''')    208.100.60.19
+
-
*Montreal 2, QC    ('''montreal2.voip.ms''')  208.100.60.20
+
-
*Montreal 3, QC    ('''montreal3.voip.ms''')  208.100.60.21
+
-
*Montreal 4, QC    ('''montreal4.voip.ms''')  208.100.60.22
+
-
*Montreal 5, QC    ('''montreal5.voip.ms''')  208.100.60.23
+
-
*Montreal 6, QC    ('''montreal6.voip.ms''')  208.100.60.24
+
-
*Montreal 7, QC    ('''montreal7.voip.ms''')  208.100.60.25
+
-
*Montreal 8, QC    ('''montreal8.voip.ms''')  208.100.60.26
+
-
*Montreal 9, QC    ('''montreal9.voip.ms''')  208.100.60.27
+
-
*Montreal 10, QC    ('''montreal10.voip.ms''') 208.100.60.28
+
-
*Toronto 1, ON      ('''toronto.voip.ms''')    208.100.60.50
+
-
*Toronto 2, ON      ('''toronto2.voip.ms''')    208.100.60.51
+
-
*Toronto 3, ON      ('''toronto3.voip.ms''')    208.100.60.52
+
-
*Toronto 4, ON      ('''toronto4.voip.ms''')    208.100.60.53
+
-
*Toronto 5, ON      ('''toronto5.voip.ms''')    208.100.60.54
+
-
*Toronto 6, ON      ('''toronto6.voip.ms''')    208.100.60.55
+
-
*Toronto 7, ON      ('''toronto7.voip.ms''')    208.100.60.56
+
-
*Toronto 8, ON      ('''toronto8.voip.ms''')    208.100.60.57
+
-
*Toronto 9, ON      ('''toronto9.voip.ms''')    208.100.60.58
+
-
*Toronto 10, ON      ('''toronto10.voip.ms''')  208.100.60.59
+
-
*Vancouver 1, BC    ('''vancouver.voip.ms''')  208.100.60.60
+
-
*Vancouver 2, BC    ('''vancouver2.voip.ms''')  208.100.60.61
+
-
*Vancouver 3, BC    ('''vancouver3.voip.ms''')  208.100.60.62
+
-
</li>
+
-
<li style="display: inline-block; vertical-align:top;">
+
= Server List =
-
'''United States'''
+
-
*Atlanta 1, GA      ('''atlanta.voip.ms''')    208.100.60.17
+
-
*Atlanta 2, GA      ('''atlanta2.voip.ms''')    208.100.60.18
+
-
*Chicago 1, IL      ('''chicago.voip.ms''')    208.100.60.8
+
-
*Chicago 2, IL      ('''chicago2.voip.ms''')    208.100.60.9
+
-
*Chicago 3, IL      ('''chicago3.voip.ms''')    208.100.60.10
+
-
*Chicago 4, IL      ('''chicago4.voip.ms''')    208.100.60.11   
+
-
*Dallas, TX        ('''dallas.voip.ms''')      208.100.60.29
+
-
*Dallas 2, TX        ('''dallas2.voip.ms''')  208.100.60.30
+
-
*Denver 1, CO      ('''denver.voip.ms''')      208.100.60.32
+
-
*Denver 2, CO      ('''denver2.voip.ms''')    64.27.52.226
+
-
*Houston, TX        ('''houston.voip.ms''')    208.100.60.15
+
-
*Houston 2, TX        ('''houston2.voip.ms''')  208.100.60.16
+
-
*Los Angeles 1, CA  ('''losangeles.voip.ms''')  208.100.60.35
+
-
*Los Angeles 2, CA  ('''losangeles2.voip.ms''') 208.100.60.36
+
-
*Los Angeles 3, CA  ('''losangeles3.voip.ms''') 208.100.60.37
+
-
*Los Angeles 4, CA  ('''losangeles4.voip.ms''') 208.100.60.38
+
-
*New York 1, NY    ('''newyork.voip.ms''')    208.100.60.66
+
-
*New York 2, NY    ('''newyork2.voip.ms''')    208.100.60.67
+
-
*New York 3, NY    ('''newyork3.voip.ms''')    208.100.60.68
+
-
*New York 4, NY    ('''newyork4.voip.ms''')    208.100.60.69
+
-
*New York 5, NY    ('''newyork5.voip.ms''')    208.100.60.11
+
-
*New York 6, NY    ('''newyork6.voip.ms''')    208.100.60.12
+
-
*New York 7, NY    ('''newyork7.voip.ms''')    208.100.60.13
+
-
*New York 8, NY    ('''newyork8.voip.ms''')    208.100.60.14
+
-
*San Jose, CA      ('''sanjose.voip.ms''')    208.100.60.40
+
-
*San Jose 2, CA    ('''sanjose2.voip.ms''')    208.100.60.41
+
-
*Seattle 1, WA      ('''seattle.voip.ms''')    208.100.60.42
+
-
*Seattle 2, WA      ('''seattle2.voip.ms''')    208.100.60.43
+
-
*Seattle 3, WA      ('''seattle3.voip.ms''')    208.100.60.44
+
-
*Tampa, FL          ('''tampa.voip.ms''')      208.100.60.46
+
-
*Tampa 2, FL        ('''tampa2.voip.ms''')      208.100.60.47
+
-
*Tampa 3, FL        ('''tampa3.voip.ms''')      208.100.60.48
+
-
*Tampa 4, FL        ('''tampa4.voip.ms''')      208.100.60.49
+
-
*Washington 1, DC  ('''washington.voip.ms''')  208.100.60.63
+
-
*Washington 2, DC  ('''washington2.voip.ms''') 208.100.60.64
+
-
</li>
+
{| cellspacing="0" style="width: 100%; border: 0; padding: 0; background: transparent;"
 +
|-
 +
| style="width: 33%; vertical-align: top; padding-right: 12px;" |
-
<li style="display: inline-block; vertical-align:top;">
+
{| class="wikitable" style="width: 100%; border-collapse: collapse; border: none; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.06);"
-
'''International'''
+
! colspan="2" style="background: linear-gradient(135deg, #d0382d 0%, #b8261a 100%); color: white; padding: 14px 16px; font-weight: 700; text-align: left;" | Canada
-
*Amsterdam, NL      ('''amsterdam1.voip.ms''')  208.100.60.65
+
|-
-
*London, UK        ('''london1.voip.ms''')      208.100.60.34
+
! style="background: #f1f5f9; color: #64748b; padding: 8px 12px; font-size: 0.8em; font-weight: 600; text-align: left;" | Hostname
-
*Paris, FR          ('''paris1.voip.ms''')      208.100.60.39
+
! style="background: #f1f5f9; color: #64748b; padding: 8px 12px; font-size: 0.8em; font-weight: 600; text-align: left;" | IP
-
*Sydney, AU        ('''sydney1.voip.ms''')    208.100.60.45
+
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.19
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.20
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal3.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.21
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal4.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.22
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal5.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.23
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal6.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.24
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal7.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.25
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal8.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.26
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal9.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.27
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | montreal10.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.28
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.50
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.51
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto3.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.52
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto4.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.53
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto5.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.54
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto6.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.55
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto7.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.56
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto8.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.57
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto9.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.58
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | toronto10.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.59
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | vancouver.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.60
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | vancouver2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.61
 +
|-
 +
| style="padding: 8px 12px; background: #fff; font-size: 0.85em;" | vancouver3.voip.ms
 +
| style="padding: 8px 12px; background: #fff; font-size: 0.85em;" | 208.100.60.62
 +
|}
-
</li>
+
| style="width: 33%; vertical-align: top; padding: 0 6px;" |
-
</ul></div>
+
-
= Latency Testing Scripts (User Submitted) =
+
{| class="wikitable" style="width: 100%; border-collapse: collapse; border: none; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.06);"
-
<p>All the following scripts were produced by voip.ms users who felt others might also benefit from the output of their efforts. They were written over a span of Years and probably need adjusting before you use them, to cater for changes in servers over time and changes in policies (like not testing heavily subscribed servers which are not open to new registrations)</p>
+
! colspan="2" style="background: linear-gradient(135deg, #d0382d 0%, #b8261a 100%); color: white; padding: 14px 16px; font-weight: 700; text-align: left;" | United States
-
<p>If you aren't satisfied that the scripts are safe or simply don’t like the way they syntactically appear, you can still manually ping a selection of servers and choose a server based on the best latency. The following scripts are essentially just wrappers around the ping command which support lists of servers to feed to ping and present the output in a readable format.</p>
+
|-
-
<p>If you feel you have a simpler cleaner script that works for another platform or language, please do add it to this wiki via a support ticket.
+
! style="background: #f1f5f9; color: #64748b; padding: 8px 12px; font-size: 0.8em; font-weight: 600; text-align: left;" | Hostname
-
</p>
+
! style="background: #f1f5f9; color: #64748b; padding: 8px 12px; font-size: 0.8em; font-weight: 600; text-align: left;" | IP
-
=== Bash Script To Handle The Mac Ping Output Format ===
+
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | atlanta.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.17
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | atlanta2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.18
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | chicago.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.8
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | chicago2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.9
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | chicago3.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.10
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | chicago4.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.6
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | dallas.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.29
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | dallas2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.30
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | denver.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.32
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | denver2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.33
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | houston.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.15
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | houston2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.16
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | losangeles.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.35
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | losangeles2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.36
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | losangeles3.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.37
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | losangeles4.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.38
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.66
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.67
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork3.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.68
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork4.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.69
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork5.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.11
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork6.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.12
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork7.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.13
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | newyork8.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.14
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | sanjose.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.40
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | sanjose2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.41
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | seattle.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.42
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | seattle2.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.43
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | seattle3.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.44
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | tampa.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.46
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | tampa2.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.47
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | tampa3.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.48
 +
|-
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | tampa4.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.49
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | washington.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.63
 +
|-
 +
| style="padding: 8px 12px; background: #fff; font-size: 0.85em;" | washington2.voip.ms
 +
| style="padding: 8px 12px; background: #fff; font-size: 0.85em;" | 208.100.60.64
 +
|}
-
<p>To make use of this script (1) save as a plain text file (2) set permissions on the file to executable (3) invoke script
+
| style="width: 33%; vertical-align: top; padding-left: 12px;" |
-
e.g. Save script below using your favourite editor as pingVoipMS.sh (2) chmod u+x pingVoipMS.sh (3) ./pingVoipMS.sh
+
-
This is a bash 3.x script, so it also works in Linux, just change the ping packet loss field from 7 to 6 in the final loop below (or wherever the loss field is in your ping output format).  Depending upon your distro curl might need to change to wget.
+
-
</p>
+
-
<pre>
+
-
#!/bin/bash
+
-
# Ping several servers and display Latency, Jitter and Packet Loss
+
-
#      Usage: [-c <count>][-i <wait time>][-r test restricted servers][<server list file>]
+
-
#
+
-
# The optional server list text file should be formatted with one host name per line.
+
-
# The list of voip.ms servers is available at https://wiki.voip.ms/article/Choosing_Server
+
-
# If no args are supplied, this script will scrape a ping server list from voip.ms
+
-
#
+
-
USER_FILE=""
+
-
COUNT=3; INTERVAL=5; RESTRICTED=0
+
-
restrictedList=(atlanta.voip.ms chicago.voip.ms
+
-
                montreal.voip.ms montreal2.voip.ms montreal3.voip.ms montreal4.voip.ms
+
-
                newyork.voip.ms newyork4.voip.ms seattle.voip.ms
+
-
                toronto.voip.ms toronto2.voip.ms toronto3.voip.ms toronto4.voip.ms)
+
-
# Handle any passed in script arguments
+
{| class="wikitable" style="width: 100%; border-collapse: collapse; border: none; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.06);"
-
while getopts c:i:r parm
+
! colspan="2" style="background: linear-gradient(135deg, #d0382d 0%, #b8261a 100%); color: white; padding: 14px 16px; font-weight: 700; text-align: left;" | International
-
do
+
|-
-
    case $parm in
+
! style="background: #f1f5f9; color: #64748b; padding: 8px 12px; font-size: 0.8em; font-weight: 600; text-align: left;" | Hostname
-
        c)count_opt=$OPTARG;;
+
! style="background: #f1f5f9; color: #64748b; padding: 8px 12px; font-size: 0.8em; font-weight: 600; text-align: left;" | IP
-
        i)interval_opt=$OPTARG;;
+
|-
-
        r)RESTRICTED=1;;
+
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | amsterdam1.voip.ms
-
        *)echo -e "Invalid arg\nUsage:\t[ -c <count of ECHO_REQUESTs to Tx, default 3> ] \
+
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.65
-
                  \n\t[ -i <wait time (s) between datagrams, default 5> ]                \
+
|-
-
                  \n\t[ -r ] Include restricted servers in latency test                  \
+
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | london1.voip.ms
-
                  \n\t[FILE <ping server list> ]";exit 1;;
+
| style="padding: 8px 12px; background: #fafbfc; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.34
-
    esac
+
|-
-
done
+
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | paris1.voip.ms
 +
| style="padding: 8px 12px; background: #fff; border-bottom: 1px solid #f1f5f9; font-size: 0.85em;" | 208.100.60.39
 +
|-
 +
| style="padding: 8px 12px; background: #fafbfc; font-size: 0.85em;" | sydney1.voip.ms
 +
| style="padding: 8px 12px; background: #fafbfc; font-size: 0.85em;" | 208.100.60.45
 +
|-
 +
| style="padding: 8px 12px; background: #fff; font-size: 0.85em;" | intl.voip.ms *
 +
| style="padding: 8px 12px; background: #fff; font-size: 0.85em;" | 208.100.60.99
 +
|}
-
# Test if an option was specified and whether it's a +ve non-zero integer
+
|}
-
[[ -n $count_opt    && ($count_opt =~ ^[[:digit:]]+$)    && $count_opt -gt 0 ]] &&
+
-
        COUNT=$count_opt
+
-
[[ -n $interval_opt && ($interval_opt =~ ^[[:digit:]]+$) && $interval_opt -gt 0 ]] &&
+
-
        INTERVAL=$interval_opt
+
-
shift $((OPTIND - 1))
+
{| cellspacing="0" style="width: 100%; background: white; border: 1px solid #e2e8f0; border-radius: 8px; padding: 25px; margin: 25px 0; box-shadow: 0 2px 10px rgba(0,0,0,0.06);"
 +
|-
 +
| style="vertical-align: top;" |
 +
<div style="font-size: 1.1em; font-weight: 500; color: #1e293b; margin-bottom: 12px;">* About intl.voip.ms</div>
 +
<code>intl.voip.ms</code> is intended for organizations whose team members are spread across both North America and international locations. Unlike region-specific servers, it is not tied to a single geographic region, making it the right choice when all agents need to register to the same server regardless of where they are located.
 +
|}
-
# Validate supplied file (server list)
+
= Latency =
-
[[ -n $1 && ! (-f $1 && -r $1) ]] &&
+
-
        { echo "\"$1\" file does not exist or is not readable"; exit 1; }
+
-
[[ -n $1 && -f $1 && -r $1 ]] && USER_FILE="$1"
+
-
if [[ -n $USER_FILE ]]
+
{| cellspacing="0" style="width: 100%; background: white; border: 1px solid #e2e8f0; border-radius: 12px; padding: 25px; margin: 20px 0; box-shadow: 0 2px 10px rgba(0,0,0,0.06);"
-
then
+
|-
-
# Bash 3.x in macOS does not support readarray, need to do cumbersome array loops instead
+
| style="vertical-align: top;" |
-
    while IFS= read -r servers; do
+
-
        serverList+=( "$servers" )
+
-
    done < <(grep -Eo '^\b[[:alpha:]]+?[[:alnum:]]\.voip\.ms\b$' "$USER_FILE" | \
+
-
            grep -v '^\s*#' | awk NF | sort)
+
-
else
+
-
# N.B. The script looks for the html boldface tags <b> </b> inside a bracket
+
-
# If the website alters and the parse fails, manually create the list and
+
-
# supply as a script arg (or perhaps update the parsing to work again :)
+
-
    while IFS= read -r servers; do
+
-
        serverList+=( "$servers" )
+
-
    done < <(curl -sm 10 https://wiki.voip.ms/article/Choosing_Server | \
+
-
            grep -E '(<b>[[:alpha:]]+?[[:alnum:]]\.voip\.ms</b>)'    | \
+
-
            tr "<>" " " | awk '{print $(NF-3)}' | sort                )
+
-
fi
+
-
# Newer voip.ms clients can't register onto these over-subscribed servers
+
Latency is the round-trip travel time of a data packet between your network and the VoIP.ms server, measured in milliseconds (ms). For voice calls, low latency means natural conversation with no noticeable delay. High latency causes the characteristic "talking over each other" effect.
-
# Don't test the restricted list unless explicitly asked (with the -r cmd line option)
+
-
if [[ $RESTRICTED -eq 0 ]]
+
-
then
+
-
    for server in "${restrictedList[@]}"
+
-
    do
+
-
        ix=$(printf "%s\n" "${serverList[@]}" | grep -n "^${server}" | cut -d ":" -f1)
+
-
        while IFS= read -ra idx; do
+
-
            keys+=( "${idx[@]}" )
+
-
        done < <([[ $ix -gt 0 ]] && echo $((ix-1)))
+
-
    done
+
-
    for ((i=${#keys[@]} - 1; i >= 0; i--)); do unset "serverList[keys[i]]"; done
+
-
fi
+
-
if [[ ${#serverList[@]} -eq 0 ]]
+
'''Acceptable thresholds:'''
-
then
+
* Under 150 ms: Good quality, delay is imperceptible
-
    echo "No unrestricted Voip.ms servers could be found, please supply a server list"
+
* 150–300 ms: Noticeable but tolerable
-
    exit 1
+
* Over 300 ms: Unacceptable for voice calls
-
fi
+
-
runTime=$((COUNT * INTERVAL * ${#serverList[@]}))
+
To measure latency to a server, ping its hostname from your computer or network:
-
echo "PING will send $COUNT packet(s) with a wait of $INTERVAL sec(s) between each packet"
+
<pre>ping atlanta.voip.ms</pre>
-
echo "Change the PING options by invoking this script with -c and/or -i, default \"-c 3 -i 5\""
+
-
echo "Over $((${#serverList[@]})) server(s) the estimated script Run Time will be $runTime seconds"
+
-
echo "================================================================"
+
-
printf "%-20s %-18s %7s %8s %6s  %s\n" "VoIP Server" "IP Address" "Latency" "Jitter" "Loss" "Countdown"
+
-
echo "================================================================  (seconds)"
+
-
for myLn in "${serverList[@]}"
+
Run this for two or three candidate servers and pick the one with the lowest and most consistent response times. High variance (jitter) is as problematic as high latency. It causes choppy or robotic audio.
-
do
+
-
    while IFS=$'\n' read -r pings; do
+
-
        pingList+=( "$pings" )
+
-
        printf "%-64s %5d  %2d/%-2d\n" "$pings" \
+
-
                "$((runTime - COUNT * INTERVAL * ${#pingList[@]}))" \
+
-
                "${#pingList[@]}" "${#serverList[@]}"
+
-
    done < <( ping -c "$COUNT" -i "$INTERVAL" -q "$myLn" | awk \
+
-
    '
+
-
        /^PING / {myH=$2}
+
-
        /^PING / {
+
-
            IP = substr($3,2,15)
+
-
            split(IP,myIP,")") }
+
-
        /packet loss/ {myPL=$7}
+
-
        /min\/avg\/max/ {
+
-
            split($4,myS,"/")
+
-
            printf("%-20s %-18s %7.3f %8.3f %6s\n",
+
-
                    myH, myIP[1], myS[2], myS[4], myPL ) }
+
-
    ' )
+
-
done
+
-
echo "================================================================"
+
Latency is primarily determined by physical distance and your ISP's routing. If latency to the closest server is unexpectedly high, try the next nearest city. Your ISP may route traffic inefficiently to certain destinations.
-
echo -e "\nMost appropriate server listed in order of best latency\n"
+
|}
-
echo "================================================================"
+
-
printf "%-20s %-18s %7s %8s %6s\n" "VoIP Server" "IP Address" "Latency" "Jitter" "Loss"
+
-
echo "================================================================"
+
-
printf "%s\n" "${pingList[@]}" | LC_ALL=C sort -n -k 3,3 -k 5,5 -k 4,4 | \
+
-
        awk '{printf("%s   \(%2d\)\n",$0, NR)}'
+
-
echo "================================================================"
+
-
</pre>
+
-
 
+
-
=== Perl Script ===
+
-
Pings list of voip.ms servers round robin with optional output csv file.
+
-
 
+
-
    # usage ping_voip.ms.pl <number of times> <seconds in between> <output.csv>
+
-
    use Net::Ping;
+
-
    use Time::HiRes;
+
-
    use strict;
+
-
   
+
-
    # input list
+
-
    my @hosts = qw(
+
-
        atlanta.voip.ms
+
-
        atlanta2.voip.ms
+
-
        chicago.voip.ms
+
-
        chicago2.voip.ms
+
-
        chicago3.voip.ms
+
-
        chicago4.voip.ms
+
-
        dallas.voip.ms
+
-
        denver.voip.ms
+
-
        denver2.voip.ms
+
-
        houston.voip.ms
+
-
        losangeles.voip.ms
+
-
        losangeles2.voip.ms
+
-
        newyork.voip.ms
+
-
        newyork2.voip.ms
+
-
        newyork3.voip.ms
+
-
        newyork4.voip.ms
+
-
        seattle.voip.ms
+
-
        seattle2.voip.ms
+
-
        seattle3.voip.ms
+
-
        tampa.voip.ms
+
-
        washington.voip.ms
+
-
        washington2.voip.ms
+
-
        montreal.voip.ms
+
-
        montreal2.voip.ms
+
-
        montreal3.voip.ms
+
-
        montreal4.voip.ms
+
-
        toronto2.voip.ms
+
-
        toronto3.voip.ms
+
-
        toronto4.voip.ms
+
-
        toronto.voip.ms
+
-
        london.voip.ms
+
-
    );
+
-
   
+
-
    $| = 1; #autoflush
+
-
    # High precision syntax (requires Time::HiRes)
+
-
    my $p = Net::Ping->new("icmp",1);
+
-
    $p->hires();
+
-
    my $max_name_length = (reverse sort { $a <=> $b } map { length($_) } @hosts)[0];
+
-
    my $count = 4; # number of times to ping
+
-
    my $interval = 5; # seconds between ping rounds
+
-
    my $output_file = "";
+
-
    my @data;
+
-
   
+
-
    # check for arguments
+
-
    my $num_args = @ARGV;
+
-
    if ($num_args >= 1) {$count = $ARGV[0];}
+
-
    if ($num_args >= 2) {$interval = $ARGV[1];}
+
-
    if ($num_args >= 3) {$output_file = $ARGV[2];}
+
-
   
+
-
    # check argument validity
+
-
    $0 =~ /^.*\\(.*)$/;
+
-
    my $script = $1;
+
-
    if ($count !~ /^\d+$/ or $interval !~ /^\d+$/) {die "Usage: $script <number of rounds> <seconds between rounds> <output.csv>\n";}
+
-
    if (length($output_file) > 0 and $output_file !~ /\.csv$/) {$output_file .= ".csv";}
+
-
   
+
-
    # main loop
+
-
    for my $i (1..$count)
+
-
    {
+
-
        sleep $interval unless $i == 1;
+
-
        print "Round $i\n";
+
-
        my $host_num=0;
+
-
        foreach my $host (@hosts)
+
-
        {
+
-
            (my $ret, my $duration, my $ip) = $p->ping($host);
+
-
            $ip =~ /(\d+)\.(\d+)\.(\d+)\.(\d+)/;
+
-
            if ($ret)
+
-
            {
+
-
                printf("%*s [ip: %3s.%3s.%3s.%3s] is alive (%6.2f ms)\n", $max_name_length, $host, $1, $2, $3, $4, $duration*1000);
+
-
                $data[$host_num][$i]=$duration*1000;
+
-
            }
+
-
            else
+
-
            {
+
-
                printf("%*s [ip: %3s.%3s.%3s.%3s] is dead\n", $max_name_length, $host, $1, $2, $3, $4);
+
-
            }
+
-
            $host_num++;
+
-
        }
+
-
        print "\n";
+
-
    }
+
-
    $p->close();
+
-
   
+
-
    # if output file name given
+
-
    if (length($output_file)>0)
+
-
    {
+
-
        # print output to file
+
-
        open FILE, ">$output_file" or die "$!\n";
+
-
       
+
-
        # print column headers
+
-
        print FILE "Server\\Round";
+
-
        for my $i (1..$count)
+
-
        {
+
-
            print FILE ", $i";
+
-
        }
+
-
        print FILE ", Average\n";
+
-
       
+
-
        # print data
+
-
        my $i = 0;
+
-
        foreach my $host (@hosts)
+
-
        {
+
-
            print FILE "$host";
+
-
            my $sum = 0;
+
-
            for my $j (1..$count)
+
-
            {
+
-
                $sum += $data[$i][$j];
+
-
                printf FILE ", %8.4f",$data[$i][$j];
+
-
            }
+
-
            printf FILE ", %8.4f\n",$sum/$count;
+
-
            $i++;
+
-
        }
+
-
       
+
-
        close FILE;
+
-
        print "Data written to $output_file\n";
+
-
    }
+
-
   
+
-
    # print summary to screen
+
-
    my $i = 0;
+
-
    printf("%-*s Average (ms)\n", $max_name_length, "Server");
+
-
    foreach my $host (@hosts)
+
-
    {
+
-
        my $sum = 0;
+
-
        for my $j (1..$count)
+
-
        {
+
-
            $sum += $data[$i][$j];
+
-
        }
+
-
        printf("%-*s %8.4f\n", $max_name_length+1, $host, $sum/$count);
+
-
        $i++;
+
-
    }
+
-
 
+
-
 
+
-
Output:
+
-
    Round 1
+
-
        atlanta.voip.ms [ip: 174. 34.146.162] is alive ( 88.97 ms)
+
-
      atlanta2.voip.ms [ip:  72.  9.246.170] is alive ( 92.99 ms)
+
-
        chicago.voip.ms [ip: 208.100. 39. 52] is alive ( 49.70 ms)
+
-
      chicago2.voip.ms [ip: 208.100. 39. 53] is alive ( 59.76 ms)
+
-
      chicago3.voip.ms [ip: 208.100. 39. 54] is alive ( 59.53 ms)
+
-
      chicago4.voip.ms [ip: 208.100. 39. 55] is alive ( 49.73 ms)
+
-
        dallas.voip.ms [ip:  74. 54. 54.178] is alive ( 94.99 ms)
+
-
        denver.voip.ms [ip: 173.248.161. 90] is alive ( 94.05 ms)
+
-
        denver2.voip.ms [ip: 173.248.159.210] is alive ( 85.13 ms)
+
-
        houston.voip.ms [ip: 209. 62.  1.  2] is alive (102.87 ms)
+
-
    losangeles.voip.ms [ip:  96. 44.149.186] is alive ( 64.92 ms)
+
-
    losangeles2.voip.ms [ip:  96. 44.149.202] is alive ( 63.41 ms)
+
-
        newyork.voip.ms [ip:  74. 63. 41.218] is alive (131.75 ms)
+
-
      newyork2.voip.ms [ip: 107.  6. 67.236] is alive (120.64 ms)
+
-
      newyork3.voip.ms [ip: 107.  6. 67.237] is alive (120.49 ms)
+
-
      newyork4.voip.ms [ip: 107.  6. 67.238] is alive (111.43 ms)
+
-
        seattle.voip.ms [ip:  50. 23.160. 50] is alive ( 94.25 ms)
+
-
      seattle2.voip.ms [ip:  50. 23.160. 51] is alive ( 95.86 ms)
+
-
      seattle3.voip.ms [ip:  50. 23.160. 52] is alive ( 90.85 ms)
+
-
          tampa.voip.ms [ip:  68.233.226. 97] is alive (123.29 ms)
+
-
    washington.voip.ms [ip: 208. 43.234.226] is alive ( 98.71 ms)
+
-
    washington2.voip.ms [ip: 208. 43.234.227] is alive (101.19 ms)
+
-
      montreal.voip.ms [ip:  67.205. 74.184] is alive ( 81.82 ms)
+
-
      montreal2.voip.ms [ip:  67.205. 74.187] is alive ( 86.13 ms)
+
-
      montreal3.voip.ms [ip:  72. 55.168. 18] is alive ( 77.09 ms)
+
-
      montreal4.voip.ms [ip:  67.205. 74.179] is alive ( 96.18 ms)
+
-
      toronto2.voip.ms [ip: 184. 75.215.114] is alive (103.70 ms)
+
-
      toronto3.voip.ms [ip: 184. 75.215.146] is alive (131.27 ms)
+
-
      toronto4.voip.ms [ip: 184. 75.213.210] is alive (125.13 ms)
+
-
        toronto.voip.ms [ip: 184. 75.215.106] is alive (103.26 ms)
+
-
        london.voip.ms [ip:  5. 77. 36.136] is alive (152.77 ms)
+
-
   
+
-
    Round 2
+
-
        atlanta.voip.ms [ip: 174. 34.146.162] is alive ( 88.14 ms)
+
-
      atlanta2.voip.ms [ip:  72.  9.246.170] is alive ( 92.86 ms)
+
-
        chicago.voip.ms [ip: 208.100. 39. 52] is alive ( 50.03 ms)
+
-
      chicago2.voip.ms [ip: 208.100. 39. 53] is alive ( 59.44 ms)
+
-
      chicago3.voip.ms [ip: 208.100. 39. 54] is alive ( 59.33 ms)
+
-
      chicago4.voip.ms [ip: 208.100. 39. 55] is alive ( 50.22 ms)
+
-
        dallas.voip.ms [ip:  74. 54. 54.178] is alive ( 95.58 ms)
+
-
        denver.voip.ms [ip: 173.248.161. 90] is alive ( 95.94 ms)
+
-
        denver2.voip.ms [ip: 173.248.159.210] is alive ( 85.29 ms)
+
-
        houston.voip.ms [ip: 209. 62.  1.  2] is alive (102.73 ms)
+
-
    losangeles.voip.ms [ip:  96. 44.149.186] is alive ( 65.59 ms)
+
-
    losangeles2.voip.ms [ip:  96. 44.149.202] is alive ( 64.27 ms)
+
-
        newyork.voip.ms [ip:  74. 63. 41.218] is alive (112.74 ms)
+
-
      newyork2.voip.ms [ip: 107.  6. 67.236] is alive (121.22 ms)
+
-
      newyork3.voip.ms [ip: 107.  6. 67.237] is alive (121.34 ms)
+
-
      newyork4.voip.ms [ip: 107.  6. 67.238] is alive (110.75 ms)
+
-
        seattle.voip.ms [ip:  50. 23.160. 50] is alive ( 94.06 ms)
+
-
      seattle2.voip.ms [ip:  50. 23.160. 51] is alive ( 95.33 ms)
+
-
      seattle3.voip.ms [ip:  50. 23.160. 52] is alive ( 91.58 ms)
+
-
          tampa.voip.ms [ip:  68.233.226. 97] is alive (122.94 ms)
+
-
    washington.voip.ms [ip: 169.62.41.189] is alive ( 98.28 ms)
+
-
    washington2.voip.ms [ip: 169.62.41.187] is alive (101.40 ms)
+
-
      montreal.voip.ms [ip:  67.205. 74.184] is alive ( 81.91 ms)
+
-
      montreal2.voip.ms [ip:  67.205. 74.187] is alive ( 85.64 ms)
+
-
      montreal3.voip.ms [ip:  72. 55.168. 18] is alive ( 75.15 ms)
+
-
      montreal4.voip.ms [ip:  67.205. 74.179] is alive ( 96.79 ms)
+
-
      toronto2.voip.ms [ip: 184. 75.215.114] is alive (103.10 ms)
+
-
      toronto3.voip.ms [ip: 184. 75.215.146] is alive (150.85 ms)
+
-
      toronto4.voip.ms [ip: 184. 75.213.210] is alive (138.40 ms)
+
-
        toronto.voip.ms [ip: 184. 75.215.106] is alive (103.45 ms)
+
-
        london.voip.ms [ip:  5. 77. 36.136] is alive (170.79 ms)
+
-
   
+
-
    Round 3
+
-
        atlanta.voip.ms [ip: 174. 34.146.162] is alive ( 88.76 ms)
+
-
      atlanta2.voip.ms [ip:  72.  9.246.170] is alive ( 92.86 ms)
+
-
        chicago.voip.ms [ip: 208.100. 39. 52] is alive ( 49.65 ms)
+
-
      chicago2.voip.ms [ip: 208.100. 39. 53] is alive ( 60.01 ms)
+
-
      chicago3.voip.ms [ip: 208.100. 39. 54] is alive ( 59.05 ms)
+
-
      chicago4.voip.ms [ip: 208.100. 39. 55] is alive ( 49.53 ms)
+
-
        dallas.voip.ms [ip:  74. 54. 54.178] is alive ( 95.82 ms)
+
-
        denver.voip.ms [ip: 173.248.161. 90] is alive ( 95.02 ms)
+
-
        denver2.voip.ms [ip: 173.248.159.210] is alive ( 85.60 ms)
+
-
        houston.voip.ms [ip: 209. 62.  1.  2] is alive (103.35 ms)
+
-
    losangeles.voip.ms [ip:  96. 44.149.186] is alive ( 65.79 ms)
+
-
    losangeles2.voip.ms [ip:  96. 44.149.202] is alive ( 64.05 ms)
+
-
        newyork.voip.ms [ip:  74. 63. 41.218] is alive (113.01 ms)
+
-
      newyork2.voip.ms [ip: 107.  6. 67.236] is alive (121.41 ms)
+
-
      newyork3.voip.ms [ip: 107.  6. 67.237] is alive (122.23 ms)
+
-
      newyork4.voip.ms [ip: 107.  6. 67.238] is alive (110.62 ms)
+
-
        seattle.voip.ms [ip:  50. 23.160. 50] is alive ( 93.65 ms)
+
-
      seattle2.voip.ms [ip:  50. 23.160. 51] is alive ( 95.19 ms)
+
-
      seattle3.voip.ms [ip:  50. 23.160. 52] is alive ( 90.75 ms)
+
-
          tampa.voip.ms [ip:  68.233.226. 97] is alive (125.12 ms)
+
-
    washington.voip.ms [ip: 208. 43.234.226] is alive ( 98.19 ms)
+
-
    washington2.voip.ms [ip: 208. 43.234.227] is alive (101.98 ms)
+
-
      montreal.voip.ms [ip:  67.205. 74.184] is alive ( 80.16 ms)
+
-
      montreal2.voip.ms [ip:  67.205. 74.187] is alive ( 87.16 ms)
+
-
      montreal3.voip.ms [ip:  72. 55.168. 18] is alive ( 76.54 ms)
+
-
      montreal4.voip.ms [ip:  67.205. 74.179] is alive ( 97.51 ms)
+
-
      toronto2.voip.ms [ip: 184. 75.215.114] is alive (104.18 ms)
+
-
      toronto3.voip.ms [ip: 184. 75.215.146] is alive (142.81 ms)
+
-
      toronto4.voip.ms [ip: 184. 75.213.210] is alive (138.95 ms)
+
-
        toronto.voip.ms [ip: 184. 75.215.106] is alive (103.78 ms)
+
-
        london.voip.ms [ip:  5. 77. 36.136] is alive (153.14 ms)
+
-
   
+
-
    Round 4
+
-
        atlanta.voip.ms [ip: 174. 34.146.162] is alive ( 89.19 ms)
+
-
      atlanta2.voip.ms [ip:  72.  9.246.170] is alive ( 92.98 ms)
+
-
        chicago.voip.ms [ip: 208.100. 39. 52] is alive ( 49.21 ms)
+
-
      chicago2.voip.ms [ip: 208.100. 39. 53] is alive ( 60.50 ms)
+
-
      chicago3.voip.ms [ip: 208.100. 39. 54] is alive ( 59.68 ms)
+
-
      chicago4.voip.ms [ip: 208.100. 39. 55] is alive ( 50.18 ms)
+
-
        dallas.voip.ms [ip:  74. 54. 54.178] is alive ( 93.93 ms)
+
-
        denver.voip.ms [ip: 173.248.161. 90] is alive ( 94.22 ms)
+
-
        denver2.voip.ms [ip: 173.248.159.210] is alive ( 85.10 ms)
+
-
        houston.voip.ms [ip: 209. 62.  1.  2] is alive (103.67 ms)
+
-
    losangeles.voip.ms [ip:  96. 44.149.186] is alive ( 65.58 ms)
+
-
    losangeles2.voip.ms [ip:  96. 44.149.202] is alive ( 63.60 ms)
+
-
        newyork.voip.ms [ip:  74. 63. 41.218] is alive (114.76 ms)
+
-
      newyork2.voip.ms [ip: 107.  6. 67.236] is alive (120.44 ms)
+
-
      newyork3.voip.ms [ip: 107.  6. 67.237] is alive (121.05 ms)
+
-
      newyork4.voip.ms [ip: 107.  6. 67.238] is alive (110.51 ms)
+
-
        seattle.voip.ms [ip:  50. 23.160. 50] is alive ( 94.04 ms)
+
-
      seattle2.voip.ms [ip:  50. 23.160. 51] is alive ( 96.92 ms)
+
-
      seattle3.voip.ms [ip:  50. 23.160. 52] is alive ( 91.23 ms)
+
-
          tampa.voip.ms [ip:  68.233.226. 97] is alive (123.28 ms)
+
-
    washington.voip.ms [ip: 208. 43.234.226] is alive ( 98.45 ms)
+
-
    washington2.voip.ms [ip: 208. 43.234.227] is alive (100.94 ms)
+
-
      montreal.voip.ms [ip:  67.205. 74.184] is alive ( 82.33 ms)
+
-
      montreal2.voip.ms [ip:  67.205. 74.187] is alive ( 85.02 ms)
+
-
      montreal3.voip.ms [ip:  72. 55.168. 18] is alive ( 76.85 ms)
+
-
      montreal4.voip.ms [ip:  67.205. 74.179] is alive ( 96.32 ms)
+
-
      toronto2.voip.ms [ip: 184. 75.215.114] is alive (104.22 ms)
+
-
      toronto3.voip.ms [ip: 184. 75.215.146] is alive (148.33 ms)
+
-
      toronto4.voip.ms [ip: 184. 75.213.210] is alive (141.61 ms)
+
-
        toronto.voip.ms [ip: 184. 75.215.106] is alive (105.91 ms)
+
-
        london.voip.ms [ip:  5. 77. 36.136] is alive (152.85 ms)
+
-
   
+
-
    Server              Average (ms)
+
-
    atlanta.voip.ms      88.7630
+
-
    atlanta2.voip.ms      92.9233
+
-
    chicago.voip.ms      49.6477
+
-
    chicago2.voip.ms      59.9305
+
-
    chicago3.voip.ms      59.3972
+
-
    chicago4.voip.ms      49.9152
+
-
    dallas.voip.ms        95.0790
+
-
    denver.voip.ms        94.8077
+
-
    denver2.voip.ms      85.2797
+
-
    houston.voip.ms      103.1562
+
-
    losangeles.voip.ms    65.4693
+
-
    losangeles2.voip.ms  63.8347
+
-
    newyork.voip.ms      118.0643
+
-
    newyork2.voip.ms    120.9265
+
-
    newyork3.voip.ms    121.2778
+
-
    newyork4.voip.ms    110.8275
+
-
    seattle.voip.ms      93.9993
+
-
    seattle2.voip.ms      95.8267
+
-
    seattle3.voip.ms      91.1035
+
-
    tampa.voip.ms        123.6570
+
-
    washington.voip.ms    98.4065
+
-
    washington2.voip.ms  101.3774
+
-
    montreal.voip.ms      81.5525
+
-
    montreal2.voip.ms    85.9863
+
-
    montreal3.voip.ms    76.4058
+
-
    montreal4.voip.ms    96.7013
+
-
    toronto2.voip.ms    103.7986
+
-
    toronto3.voip.ms    143.3156
+
-
    toronto4.voip.ms    136.0254
+
-
    toronto.voip.ms      104.1012
+
-
    london.voip.ms      157.3885
+
-
 
+
-
=== Powershell ===
+
-
 
+
-
Dec 2017 - A bug in the code shown washington2.voip.ms as the best server, this was corrected.
+
-
 
+
-
<pre>
+
-
# Usage: Copy and paste the following code into a powershell window
+
-
# To run it from a command prompt, save this file with extension ps1.
+
-
# Then run Powershell.exe -file "pathtothisscript.ps1"
+
-
Clear-Variable best* -Scope Global #Clear the best* variables in case you run it more than once...
+
-
#Get the list of servers into an array
+
-
$Servers =     
+
-
@("amsterdam.voip.ms","atlanta.voip.ms","atlanta2.voip.ms","chicago.voip.ms","chicago2.voip.ms","chicago3.voip.ms",
+
-
"chicago4.voip.ms","dallas.voip.ms","dallas2.voip.ms","denver.voip.ms","denver2.voip.ms","houston.voip.ms",
+
-
"houston2.voip.ms","london.voip.ms","losangeles.voip.ms","losangeles2.voip.ms","montreal.voip.ms",
+
-
"montreal2.voip.ms","montreal3.voip.ms","montreal4.voip.ms","montreal5.voip.ms","montreal6.voip.ms","montreal7.voip.ms",
+
-
"montreal8.voip.ms","newyork.voip.ms","newyork2.voip.ms","newyork3.voip.ms","newyork4.voip.ms","newyork5.voip.ms",
+
-
"newyork6.voip.ms","newyork7.voip.ms","newyork8.voip.ms","paris.voip.ms","sanjose.voip.ms","sanjose2.voip.ms",
+
-
"seattle.voip.ms","seattle2.voip.ms","seattle3.voip.ms","tampa.voip.ms","tampa2.voip.ms","toronto.voip.ms",
+
-
"toronto2.voip.ms","toronto3.voip.ms","toronto4.voip.ms","toronto5.voip.ms","toronto6.voip.ms","toronto7.voip.ms",
+
-
"toronto8.voip.ms","vancouver.voip.ms","vancouver2.voip.ms","washington.voip.ms","washington2.voip.ms")
+
-
$k = 0 #Counting variable so we know what server number we are testing
+
-
#num of servers to test
+
-
$servercount = $servers.length
+
-
#Do the following code for each server in our array
+
-
ForEach($server in $servers)
+
-
+
-
  #Add one to the counting variable....we are on server #1...then server 2, then server 3 etc...
+
-
  $k++
+
-
  #Update the progress bar                   
+
-
  Write-Progress -Activity "Testing Server: ${server}" -status "Testing Server $k out of $servercount" -percentComplete ($k / $servercount*100)
+
-
  #Counting variable for number of times we tried to ping a given server
+
-
  $i = 0
+
-
  Do{
+
-
    #assume a failure
+
-
    $pingsuccess = $false
+
-
    $i++ #Add one to the counting variable.....1st try....2nd try....3rd try etc...
+
-
    Try{
+
-
        #Try to ping
+
-
        $currentping = (test-connection $server -count 1 -ErrorAction Stop).responsetime
+
-
        #If success full, set success variable
+
-
        $pingsuccess = $true
+
-
    }
+
-
    #Catch the failure and set the success variable to false
+
-
    Catch {
+
-
      $pingsuccess = $false
+
-
      }   
+
-
  }
+
-
  #Try everything between Do and While up to 5 times, or while $pingsuccess is not true
+
-
  While($pingsuccess -eq $false -and $i -le 5)
+
-
  #Compare the last ping test with the best known ping test....if there is no known best ping test, assume this one is the best $bestping = $currentping
+
-
  If($pingsuccess -and ($currentping -lt $bestping -or (!($bestping)))){
+
-
  #If this is the best ping...save it
+
-
        $bestserver = $server    #Save the best server
+
-
        $bestping = $currentping #Save the best ping results
+
-
  }
+
-
  write-host "tested: $server at $currentping ms after $i attempts" #write the results of the test for this server
+
-
}
+
-
write-host "`r`n The server with the best ping is: $bestserver at $bestping ms`r`n" #write the end result
+
-
Pause
+
-
</pre>
+
-
 
+
-
=== Linux Shell Script ===
+
-
Pings several voip.ms servers
+
-
 
+
-
  #!/bin/sh
+
-
  # Ping several servers and display Latency, Jitter and Packet Loss
+
-
  #
+
-
  # First, create a text file with all servers you want to ping - one host name per line.  
+
-
  # The list of voip.ms servers is available at http://wiki.voip.ms/article/Choosing_Server
+
-
  myHF="voip_ping_hosts.txt"
+
-
  # Sample file:
+
-
  #    toronto.voip.ms
+
-
  #    montreal.voip.ms
+
-
  #    seattle.voip.ms
+
-
  #    chicago.voip.ms
+
-
  #    newyork.voip.ms
+
-
  #
+
-
  echo "============================================"
+
-
  printf "%-20s %7s %8s %6s\n" "VoIP Server" "Latency" "Jitter" "Loss"
+
-
  echo "============================================"
+
-
  cat ${myHF} |\
+
-
  while read myLn
+
-
  do
+
-
      ping -c 3 -i 5 -q $myLn |\
+
-
      awk '/^PING / {myH=$2}
+
-
          /packet loss/ {myPL=$6}
+
-
          /min\/avg\/max/ {
+
-
              split($4,myS,"/")
+
-
              printf( "%-20s    %3.1f    %1.3f  %4s\n", myH, myS[2], myS[4], myPL)
+
-
          }'
+
-
  done
+
-
  echo "============================================"
+
-
 
+
-
Output:
+
-
 
+
-
  ============================================
+
-
  VoIP Server          Latency  Jitter  Loss
+
-
  ============================================
+
-
  toronto.voip.ms        68.3    0.439    0%
+
-
  montreal.voip.ms        89.6    0.197    0%
+
-
  seattle.voip.ms        71.2    0.387    0%
+
-
  chicago.voip.ms        71.6    0.084    0%
+
-
  newyork.voip.ms        79.1    0.411    0%
+
-
  ============================================
+
-
 
+
-
=== Using PingInfoView (Freeware, Windows Only) ===
+
-
PingInfoView is a tool that allows you to ping multiple servers at once which can be quite useful given the extended list of servers provided by Voip.ms. The tool can be found [https://www.nirsoft.net/utils/multiple_ping_tool.html here] (no affiliation with the author or voip.ms; direct download link [https://www.nirsoft.net/utils/pinginfoview.zip here]) and requires no installation, you can execute it directly from the zip file.
+
-
 
+
-
Server list (same as the list above, but simplified for easier copy/paste into the tool):
+
-
<div><ul>
+
-
<li style="display: inline-block; vertical-align:top;">
+
-
'''Canada'''
+
-
*montreal.voip.ms
+
-
*montreal2.voip.ms
+
-
*montreal3.voip.ms
+
-
*montreal4.voip.ms
+
-
*montreal5.voip.ms
+
-
*montreal6.voip.ms
+
-
*montreal7.voip.ms
+
-
*montreal8.voip.ms
+
-
*montreal9.voip.ms
+
-
*montreal10.voip.ms
+
-
*toronto.voip.ms
+
-
*toronto2.voip.ms
+
-
*toronto3.voip.ms
+
-
*toronto4.voip.ms
+
-
*toronto5.voip.ms
+
-
*toronto6.voip.ms
+
-
*toronto7.voip.ms
+
-
*toronto8.voip.ms
+
-
*toronto9.voip.ms
+
-
*toronto10.voip.ms
+
-
*vancouver.voip.ms
+
-
*vancouver2.voip.ms
+
-
*vancouver3.voip.ms
+
-
</li>
+
-
 
+
-
<li style="display: inline-block; vertical-align:top;">
+
-
'''United States'''
+
-
*atlanta.voip.ms
+
-
*atlanta2.voip.ms
+
-
*chicago.voip.ms
+
-
*chicago2.voip.ms
+
-
*chicago3.voip.ms
+
-
*chicago4.voip.ms
+
-
*chicago5.voip.ms
+
-
*chicago6.voip.ms
+
-
*chicago7.voip.ms
+
-
*dallas.voip.ms
+
-
*dallas2.voip.ms
+
-
*denver.voip.ms
+
-
*denver2.voip.ms
+
-
*houston.voip.ms
+
-
*houston2.voip.ms
+
-
*losangeles.voip.ms
+
-
*losangeles2.voip.ms
+
-
*losangeles3.voip.ms
+
-
*losangeles4.voip.ms
+
-
*newyork.voip.ms
+
-
*newyork2.voip.ms
+
-
*newyork3.voip.ms
+
-
*newyork4.voip.ms
+
-
*newyork5.voip.ms
+
-
*newyork6.voip.ms
+
-
*newyork7.voip.ms
+
-
*newyork8.voip.ms
+
-
*sanjose.voip.ms
+
-
*sanjose2.voip.ms
+
-
*seattle.voip.ms
+
-
*seattle2.voip.ms
+
-
*seattle3.voip.ms
+
-
*tampa.voip.ms
+
-
*tampa2.voip.ms
+
-
*tampa3.voip.ms
+
-
*tampa4.voip.ms
+
-
*washington.voip.ms
+
-
*washington2.voip.ms
+
-
</li>
+
-
 
+
-
<li style="display: inline-block; vertical-align:top;">
+
-
'''International'''
+
-
*amsterdam.voip.ms
+
-
*london.voip.ms
+
-
*sydney1.voip.ms
+
-
*paris.voip.ms
+
-
</li>
+
-
</ul></div>
+
-
 
+
-
Output:
+
-
 
+
-
[[File:PingInfoView_screenshot.png]]
+
-
 
+
-
= Latency and its importance =
+
-
 
+
-
Latency is very important for Voip, this will determine the time that will take for the data package transmission to reach the destination. A high latency will lead to a delay and echoes in the communication.
+
-
 
+
-
Latency is measured in milliseconds (ms) For example: a latency of 150ms is barely noticeable, thus acceptable. Higher than that, quality starts to suffer. When it gets higher than 300 ms, it becomes unacceptable.
+
-
 
+
-
[[category:guides]]
+

Latest revision as of 12:58, 2 July 2026

Choosing a Server with VoIP.ms

VoIP.ms operates servers across North America and internationally. Pick the one closest to you.

How to choose

Use the server geographically closest to your physical location. Closer servers mean lower latency, which translates to better call quality with less delay and echo. A server further away will still work, but proximity is the right starting point.

Your device registers to the chosen server as well as your DID (phone number). You will notice that your DID also has a Point of Presence (POP) setting. Both must be set to the same server. If they don't match, inbound calls will not reach your device. Set your DID Point of Presence under DID Numbers → Manage DIDs → Edit.

Server List

Canada
Hostname IP
montreal.voip.ms 208.100.60.19
montreal2.voip.ms 208.100.60.20
montreal3.voip.ms 208.100.60.21
montreal4.voip.ms 208.100.60.22
montreal5.voip.ms 208.100.60.23
montreal6.voip.ms 208.100.60.24
montreal7.voip.ms 208.100.60.25
montreal8.voip.ms 208.100.60.26
montreal9.voip.ms 208.100.60.27
montreal10.voip.ms 208.100.60.28
toronto.voip.ms 208.100.60.50
toronto2.voip.ms 208.100.60.51
toronto3.voip.ms 208.100.60.52
toronto4.voip.ms 208.100.60.53
toronto5.voip.ms 208.100.60.54
toronto6.voip.ms 208.100.60.55
toronto7.voip.ms 208.100.60.56
toronto8.voip.ms 208.100.60.57
toronto9.voip.ms 208.100.60.58
toronto10.voip.ms 208.100.60.59
vancouver.voip.ms 208.100.60.60
vancouver2.voip.ms 208.100.60.61
vancouver3.voip.ms 208.100.60.62
United States
Hostname IP
atlanta.voip.ms 208.100.60.17
atlanta2.voip.ms 208.100.60.18
chicago.voip.ms 208.100.60.8
chicago2.voip.ms 208.100.60.9
chicago3.voip.ms 208.100.60.10
chicago4.voip.ms 208.100.60.6
dallas.voip.ms 208.100.60.29
dallas2.voip.ms 208.100.60.30
denver.voip.ms 208.100.60.32
denver2.voip.ms 208.100.60.33
houston.voip.ms 208.100.60.15
houston2.voip.ms 208.100.60.16
losangeles.voip.ms 208.100.60.35
losangeles2.voip.ms 208.100.60.36
losangeles3.voip.ms 208.100.60.37
losangeles4.voip.ms 208.100.60.38
newyork.voip.ms 208.100.60.66
newyork2.voip.ms 208.100.60.67
newyork3.voip.ms 208.100.60.68
newyork4.voip.ms 208.100.60.69
newyork5.voip.ms 208.100.60.11
newyork6.voip.ms 208.100.60.12
newyork7.voip.ms 208.100.60.13
newyork8.voip.ms 208.100.60.14
sanjose.voip.ms 208.100.60.40
sanjose2.voip.ms 208.100.60.41
seattle.voip.ms 208.100.60.42
seattle2.voip.ms 208.100.60.43
seattle3.voip.ms 208.100.60.44
tampa.voip.ms 208.100.60.46
tampa2.voip.ms 208.100.60.47
tampa3.voip.ms 208.100.60.48
tampa4.voip.ms 208.100.60.49
washington.voip.ms 208.100.60.63
washington2.voip.ms 208.100.60.64
International
Hostname IP
amsterdam1.voip.ms 208.100.60.65
london1.voip.ms 208.100.60.34
paris1.voip.ms 208.100.60.39
sydney1.voip.ms 208.100.60.45
intl.voip.ms * 208.100.60.99
* About intl.voip.ms

intl.voip.ms is intended for organizations whose team members are spread across both North America and international locations. Unlike region-specific servers, it is not tied to a single geographic region, making it the right choice when all agents need to register to the same server regardless of where they are located.

Latency

Latency is the round-trip travel time of a data packet between your network and the VoIP.ms server, measured in milliseconds (ms). For voice calls, low latency means natural conversation with no noticeable delay. High latency causes the characteristic "talking over each other" effect.

Acceptable thresholds:

  • Under 150 ms: Good quality, delay is imperceptible
  • 150–300 ms: Noticeable but tolerable
  • Over 300 ms: Unacceptable for voice calls

To measure latency to a server, ping its hostname from your computer or network:

ping atlanta.voip.ms

Run this for two or three candidate servers and pick the one with the lowest and most consistent response times. High variance (jitter) is as problematic as high latency. It causes choppy or robotic audio.

Latency is primarily determined by physical distance and your ISP's routing. If latency to the closest server is unexpectedly high, try the next nearest city. Your ISP may route traffic inefficiently to certain destinations.

Personal tools
Namespaces
Variants
Actions
VoIP.ms Wiki
Guides 🇨🇦
Guías 🇲🇽