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]
(Bash Script To Handle The Mac Ping Output Format)
(Latency Testing Scripts (User Submitted))
Line 99: Line 99:
</li>
</li>
</ul></div>
</ul></div>
-
 
-
= Latency Testing Scripts (User Submitted) =
 
-
<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>
 
-
<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.
 
-
</p>
 
-
=== 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 and its importance =

Revision as of 20:07, 30 March 2022

VoIP.ms servers


Article en Français Artículo en Español
Français

Español



Choosing a Server

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.

Note: Make sure that your SIP/IAX device and your phone number are pointing to the same server. 

IPs

  • 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
  • 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
  • International
    • Amsterdam, NL (amsterdam1.voip.ms) 208.100.60.65
    • London, UK (london1.voip.ms) 208.100.60.34
    • Paris, FR (paris1.voip.ms) 208.100.60.39
    • Sydney, AU (sydney1.voip.ms) 208.100.60.45

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.

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