クラスタ化したサーバから、何等かの通信を他サーバに対して行う場合、
OS標準の動作としては、ソースアドレスは「物理IPアドレス」を使用する。
ただし、アプリケーションなどで使用するIPアドレスを指定しているような場合には、物理IPアドレスとは限らず、アプリケーション側での指定アドレスに従う動作となる。
上記は、FWなどで、ソースアドレスを特に意識する必要がある場合には注意が必要。
例)
クラスタ化したHULFTサーバ等、外部システムと通信する際には、デフォルト動作では
- 自ホスト⇒相手ホスト(相手の仮想アドレスに対して通信)
- 相手ホスト⇒自ホスト (相手の物理アドレスから、自ホストへ通信)
というように、通信の方向によって相手ホストのアドレスが変わる。
②は①の戻りの通信ではなく、それぞれ独立した通信で、どちら初の通信かで「相手ホスト」のアドレスが仮想アドレスになるか、物理アドレスになるかが変わるという意味。
補足
もし、どうしても物理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 アドレスに対しても実施する。