Search code examples
c#asp.netwebsite-deployment

Deploy a website in one country


I have a website and i need to deploy it in a single country for example Lebanon. In other words, any request that comes to the website from any other country should not be responded to.

I think I may use the IP address of the request and know from which country it was generated. How can I do this in C#.


Solution

  • I think I may use the IP address of the request and know from which country it was generated

    No, you dont. Illusion.

    • you can not know which country a request comes frmo, only where the IP address is registere, pretty much. More information is avaialble parsing the reverse dns SOMETIMES if you are smart at this.
    • This ignores little issuesl ike large international providers that may use a central pool of addresses, like VPN providers etc. Or satellite phone providers (which may be used out of a country but not be resident there).

    At the end this will be of RELATIVELY limtied use, depending what your exact busienss case is it may be totally useless.

    How can I do this in C#.

    Programming.

    Get a GeoIP database (look up the term in google, a provider will show up, otherwise try it in combination with "maxmind"). THen query the IP against the database. Decide how to handle "maybe" scenarios like international businesses. Example... IBM has address space. They use it for all their oprations. How you want to deal with this?