MENU
category

[WindowsServer2016]クラスタサーバが使用するソースIPアドレスは物理IPアドレスなのか、仮想IPアドレスなのか? また、制御できるのか?

クラスタ化したサーバから、何等かの通信を他サーバに対して行う場合、
OS標準の動作としては、ソースアドレスは「物理IPアドレス」を使用する。
ただし、アプリケーションなどで使用するIPアドレスを指定しているような場合には、物理IPアドレスとは限らず、アプリケーション側での指定アドレスに従う動作となる。

上記は、FWなどで、ソースアドレスを特に意識する必要がある場合には注意が必要。

例)
クラスタ化したHULFTサーバ等、外部システムと通信する際には、デフォルト動作では

  1. 自ホスト⇒相手ホスト(相手の仮想アドレスに対して通信)
  2. 相手ホスト⇒自ホスト (相手の物理アドレスから、自ホストへ通信)

    というように、通信の方向によって相手ホストのアドレスが変わる。

    ②は①の戻りの通信ではなく、それぞれ独立した通信で、どちら初の通信かで「相手ホスト」のアドレスが仮想アドレスになるか、物理アドレスになるかが変わるという意味。

補足
もし、どうしても物理IPをソースに使用したくない場合には、物理IPアドレスを使用しない制御も可能。

フローティングIPをソースIPとして選択させるには、物理IPに対してSkipAsSourceフラグ
をオンにすることで可能となる。以下にSkipAsSourceフラグを有効化する方法について記載する。

SkipAsSource フラグの有効化について

SkipAsSource フラグをオンにするには以下のいずれかの方法がある。

・netsh コマンド
・PowerShell コマンドレット

[注意事項]
・SkipAsSource フラグを True にすると、受付専用 (外部から明示的に
 論理 IPアドレスを指定されない限り利用しない) IP アドレスになる。

・すべての IPアドレスに対して SkipAsSource フラグを True にしないこと!

・以下は設定例であり、ネットワーク接続名などは環境にあわせて読み替えること。
 
———————–
方法 1 : netsh コマンド
———————–
netsh コマンドを利用する場合は、既存の IP アドレスを削除し、
再度 IP アドレスを追加する際に SkipAsSource フラグを追加する必要がある。

[手順]
 1. 管理者権限でコマンドプロンプトを起動する。
 2. 既に設定されている xx.xxx.5.106 などのアドレスを一旦削除する。

   >netsh int ipv4 delete address “networkA” xx.xxx.5.106

 3. SkipAsSource オプションを有効化して再度 xx.xxx.5.106 を設定する。

   >netsh int ipv4 add address “networkA” xx.xxx.5.106 255.255.255.0 skipassource=true

 4. “ソースとしてスキップ” が true であることを確認する。

   >netsh int ipv4 show ipaddr level=verbose

   アドレス xx.xxx.5.106 パラメーター
   ———————————————————
   インターフェイス LUID : networkA
   スコープ ID : 0.0
   有効期間 : infinite
   優先する有効期間 : infinite
   DAD 状態 : 設定
   アドレスの種類 : Manual
   ソースとしてスキップ : true <<— 設定有効の確認

 5. 同様の手順を他の 物理IP アドレスに対しても実施する。

———————————-
方法 2 : PowerShell コマンドレット
———————————-
PowerShell では既存の IP アドレスの SkipAsSource フラグを変更する。

[手順]
 1. 管理者権限で Windows PowerShell を起動する。
 2. 以下の形式でコマンドレットを実行する。

   >Set-NetIPAddress -IPAddress xx.xxx.5.106 -InterfaceAlias “networkA” -SkipAsSource $True

 3. SkipAsSource が True であることを確認する。

   >Get-NetIPAddress

   IPAddress : xx.xxx.5.106
   InterfaceIndex : 7
   InterfaceAlias : networkA
   AddressFamily : IPv4
   Type : Unicast
   PrefixLength : 24
   PrefixOrigin : Manual
   SuffixOrigin : Manual
   AddressState : Preferred
   ValidLifetime : Infinite ([TimeSpan]::MaxValue)
   PreferredLifetime : Infinite ([TimeSpan]::MaxValue)
   SkipAsSource : True <<— 設定有効の確認
   PolicyStore : ActiveStore

 4. 同様の手順を他の IP アドレスに対しても実施する。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次