How to ping Azure VM using C# code explained

I was looking for the code which can ping the Azure VM and give me the details whether VM is UP or down since the ICMP protocol is not permitted through the Azure load balancer,
you will notice that you are unable to ping an Azure VM from the internet, and from within the Azure VM, you are unable to ping internet locations.

To get rid of the issue i digged the internet to get the solution so finally i got the below solution which I have contructed through the function,
below function will ping the azure vm machine and returns true if online or false if offline

  public static bool PingServerWithSocket(string iporHostname,int portNo)
        {
            bool result = false;
           
                try
                {
                    var sock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                    sock.Blocking = true;
                   

                    IPAddress ipaddes = Dns.GetHostEntry(iporHostname).AddressList[0];
                    sock.Connect(ipaddes, portNo);
                    result = true;
                }
                catch
                {

                    result = false;
                }
           

            return result;
        }


Hope this example will help to those who wants to ping the azure VM


Comments