Pingowanie maszyn wirtualnych (oraz pingowanie z maszyn wirtualnych)

Dość często pojawia się potrzeba pingowania maszyny wirtualnej w Azure lub pingowanie na zewnątrz z maszyny wirtualnej. Jeśli spróbujemy wykonać prosty test:

PS C:\> ping pingdemotw.cloudapp.net

Pinging pingdemotw.cloudapp.net [191.238.97.93] with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.

Ping statistics for 191.238.97.93:
    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
PS C:\>

To zobaczymy, że nie da się takiej operacji przeprowadzić.

I tak samo stanie się kiedy spróbujemy wysłać pinga z wewnątrz maszyny wirtualnej:

PS C:\> ping www.microsoft.com

Pinging lb1.www.ms.akadns.net [134.170.184.133] with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.

Ping statistics for 134.170.184.133:
    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
PS C:\>

Sytuacja ta wynika z faktu, że na load balancerze, który jest w Azure blokowany jest ruch ICMP.

Najprostszym rozwiązaniem tej sytuacji jest skorzystanie z narzędzia PsPing, które jest częścią pakietu Sysinternals 🙂 Aplikacja ta pozwala wykonywać ping po protokole TCP a nie ICMP więc pozwoli nam wykonać takie testy.

Po jej sciągnięciu i zainstalowaniu można wykonać polecenie jak poniżej, podając dodatkowo otwarty port (za pomocą endpointa) dla naszej maszyny i dzięki temu otrzymamy wyniki:

PS C:\> psping pingdemotw.cloudapp.net:61025

PsPing v2.01 - PsPing - ping, latency, bandwidth measurement utility
Copyright (C) 2012-2014 Mark Russinovich
Sysinternals - www.sysinternals.com

TCP connect to 191.238.97.93:61025:
5 iterations (warmup 1) connecting test:
Connecting to 191.238.97.93:61025 (warmup): 57.06ms
Connecting to 191.238.97.93:61025: 54.98ms
Connecting to 191.238.97.93:61025: 55.69ms
Connecting to 191.238.97.93:61025: 54.53ms
Connecting to 191.238.97.93:61025: 56.86ms

TCP connect statistics for 191.238.97.93:61025:
  Sent = 4, Received = 4, Lost = 0 (0% loss),
  Minimum = 54.53ms, Maximum = 56.86ms, Average = 55.51ms
PS C:\>

No i oczywiście z poziomu samej maszyny wirtualnej też zadziała w drugą stronę:

PS C:\> psping www.microsoft.com:80

PsPing v2.01 - PsPing - ping, latency, bandwidth measurement utility
Copyright (C) 2012-2014 Mark Russinovich
Sysinternals - www.sysinternals.com

TCP connect to 134.170.184.133:80:
5 iterations (warmup 1) connecting test:
Connecting to 134.170.184.133:80 (warmup): 140.72ms
Connecting to 134.170.184.133:80: 140.81ms
Connecting to 134.170.184.133:80: 140.67ms
Connecting to 134.170.184.133:80: 140.78ms
Connecting to 134.170.184.133:80: 140.81ms

TCP connect statistics for 134.170.184.133:80:
  Sent = 4, Received = 4, Lost = 0 (0% loss),
  Minimum = 140.67ms, Maximum = 140.81ms, Average = 140.77ms
PS C:\>

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.