ASP.NET ASP.NET Core C# プログラミング

【 ASP.NET Core 】クライアントのIPアドレス 取得方法

ASP.NET Core(.NET 6)でクライアントのIPアドレスを取得する方法を解説します。

asp.net core

RemoteIpAddress

ASP.NET Coreでは、接続元であるクライアントのIPアドレスは、

HttpContext.Connection.RemoteIpAddress」で取得することができます。

接続元のIPアドレスを取得して接続元の履歴を保存したい場合などのケースで使用することがあると思います。

HTTP要求に関する情報を保有しているHttpContextクラスのConnection/RemoteIpAddress という接続元のIPアドレスを保有しているプロパティを使用することでIPアドレスを取得することが可能となっています。

実際に上記プロパティを使用してIPアドレスを取得する実装方法は以下の通りです。

public void GetClientIpAddress()
{
        // Ipv4
        var remoteIpAddress = Request.HttpContext.Connection.RemoteIpAddress.MapToIPv4();

        // Ipv6
        var remoteIpAddress = Request.HttpContext.Connection.RemoteIpAddress.MapToIPv6();
}


ちなみに、IPv4のアドレスを取得したい場合はMapToIPv4、IPv6のアドレスを取得したい場合はMapToIPv6というメソッドを使用する必要があります。

ASP.NET おすすめ入門講座

3つのWebアプリケーションの開発を通して、ASP.NETについて基礎から学べるおすすめの入門講座がこちら☟

【入門者向け】ASP.NET MVCでWebアプリ開発のノウハウを学ぼう!

icon

おすすめ記事はコチラ

スマレジ テックファーム 1

スマレジ テックファーム で Webエンジニアとして勤めている tomoです。 今回は株式会社スマレジや私が所属している 「 スマレジ テックファーム 」についてPRしていきたいと思います。 スマレジ ...

2

FromBody 属性を使用して、 ASP.NET Core(.NET 6)のWebAPIでBodyパラメータのJSONを受け取る方法を解説します。 FromBody 属性 POSTやGETで呼び出さ ...

PC picture 3

ASP.NET Core(.NET 6)でCookie認証のタイムアウトを設定する方法を解説します。 Cookieの有効期限について Cookieには通常はタイムアウト(有効期限)を設定します。 基本 ...

4

ASP.NET Core(.NET 6)でクロスオリジンリクエスト ( CORS )を設定する方法を解説します。 簡単に クロスオリジンリクエスト ( CORS )とは何かについても少し解説したいと思 ...

-ASP.NET, ASP.NET Core, C#, プログラミング
-, ,