IPv6環境のSAPシステム通信
IPv6関連のSAP情報は以下を参照します。
・SAP Help Portal – IPv6 Support in SAP NetWeaver
・SAP Note 1346768 – Activating IP Version 6 (IPv6) on AS ABAP
・SAP Note 1266733 – IPv6 support in Java Startup Framework
前提条件を満たしているか確認してください。
・ABAPスタックの場合
SAP Kernel 7.10 パッチレベル 150以上
SAP Kernel 7.11、7.20
・Javaスタックの場合 *SAP Kernel 7.20については記載がありません
SAP Kernel 7.10 Patch 129以上
SAP Kernel 7.11 Patch 18以上
・OSおよびDNSやルーターなどネットワークシステムがIPv6を扱えること
ABAPスタックはOS環境変数に(SAPプロファイルではないです)
SAP_IPv6_ACTIVE = 1
を設定するだけでIPv6アドレスでlistenできるようになります。
SAPインスタンスが動くサーバーすべてに設定し、SAPシステムを再起動します。
この環境変数の値が0か、設定していない場合はIPv4での通信になります。
注)Kernel 7.10、7.11はOS環境変数 NI_USEIPv6 = 任意の値 として設定
Javaスタックはこれに加えてJVMのプロパティで
java.net.preferIPv6Addresses = true
と設定することでIPv6アドレスでlistenできるようになります。
SAP GUI 720が稼働するクライアントがIPv6環境の場合、
SAPシステム同様にOS環境変数 SAP_IPv6_ACTIVE = 1 を設定する必要があります。
ただし、Gateway(RFC)を経由する通信は以下の留意事項があるようです。
・IPv4->IPv6の場合、IPv6側はIPv4アドレスも設定が必要
・IPv6=>IPv4はサポートされていない
当然、IPv4とIPv6は直接通信することはできません。
IPv4/IPv6間の通信には一般的にトンネリングやトランスレータなどがありますが、
ここではSAPエンジニアらしくSAP Routerを使ってみたいと思います。
SAP Help Portal – Option -6 (enable IPv6)
に従い、SAP Router バージョン38以上であれば-6オプションをつけて起動するだけで
IPv4とIPv6両方のアドレスを使えるようになります。
起動例:
C:\usr\sap\saprouter\saprouter.exe -r -R C:\user\sap\saprouter\saprouttab -V3 -E -6
例えば、
・クライアント(SAP GUI 720)はIPv6アドレス
・SAP RouterはIPv4、IPv6アドレス両方
・SAPシステムはIPv4アドレス
のときのSAP GUIからSAPシステムへの接続は以下のようになります。
saprouttabの設定例:
#
# saprouttab
#
# P <source> <dest> <port>
P IPv6アドレス IPv4アドレス *
SAP GUIの設定例:
アプリケーションサーバ欄はSAPシステムのIPv4アドレス(e.g. 192.168.1.100)
SAProuter ストリング欄に /H/<SAProuterのIPv6アドレス>/S/3299/H/
これでIPv6環境のクライアントからSAP RouterによるIPv6/IPv4変換を経て
見事IPv4環境のSAPシステムへの接続が可能となりました!
同様にIPv4 => SAP Router => IPv6、IPv6 => SAP Router =>IPv6、
IPv6 => IPv6なども問題なく接続・ログインできることを確認済みです。