Categories
Azure Virtual Machine

Expose Azure VM services publicly

Sometimes we required to expose service to access from public IP address essentially if the services are running on the virtual machine in Azure. In my case virtual machine was running a Windows 2016 server OS, it was my development machine, where I was developing some web applications. Here are the steps to allow some of the web applications running on virtual machine that need to access publicly.

First need login to your Azure portal, and go to that resource where the service is running, from the left side menu go to Networking tab like the below image –

Once you land on the Networking tab go to the “Add inbound port rule”, at the right side like the image below –

There we need to set new rules to connect to the VM services publicly

First rule source should be allow “Any” to anyone to connect from public domain same follow source port ranges. Destination for the VM can set here, setting for Destination port ranges is important, since my services in VM running on HTTP and the port is 80, so port 80 is open for external access. Protocol should set to TCP. We can set rule name in there which is not editable once set.

Now from any PC the service can be accessed using the VM IP address and the web page that is running on the VM. If the VM IP address is 20.20.20.20 and application URL is http://localhost/portal/login.asp, then you should be allowed to access like http://20.20.20.20/portal/login.asp.

Happy Exploring 🙂




Categories
DLL/Assembly

Register managed DLL in Windows

Registering a managed DLL file can be simple process if you know the correct .NET version. Registering process is slightly different for 32, 64 bit and .NET version. There is no straight way to know .NET version, using a tool like JustCompile is useful to get the .NET version, also shows internal properties and method regarding the DLL.

Once we know the .NET version and 32 or 64 bit variant of the DLL, we need to run windows command prompt in elevated mode. If the .NET version is 2.0 and 32 Bit, run this command below –

C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe <absolutePathToYourDLL.dll> /register /codebase /tlb

To register a 64 bit assembly, simply need to refer to 64 bit framework

C:\Windows\Microsoft.NET\Framework64\v2.0.50727\RegAsm.exe <absolutePathToYourDLL.dll> /register /codebase /tlb

Above command will generate a .tlb (typeLibFile) and /codebase basically register the assembly globally. Here you can find documentation.

To register a .NET 4 and 32 bit assembly run the command below –

C:\Windows\Microsoft.NET\Framework\v4.0.30319\regasm.exe <absolutePathToYourDLL.dll> /register /codebase /tlb

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe <absolutePath.dll> /register /codebase /tlb

To unregister .NET 2.0 DLL run below command

C:\Windows\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe <absolutePath.dll> /unregister

In the same way to unregister a .NET 4.0 assembly, run the command below

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regasm.exe <absolutePath.dll> /unregister

Hope it will help you.

Happy coding 🙂