スマートスタイル TECH BLOG

データベース&クラウド技術情報

OCI環境へのVPN接続でも名前解決をする

OCIへVPNで接続した際に、OCIのインスタンスを名前解決してみる

OCI環境で複数のVCNをローカルVCNピアリングで接続しても、各VCN間はIPアドレスでは通信できますが、名前解決を行いホスト名で通信する事はできません
それは、OCI環境へVPN接続しても変わらず、IPアドレスでは通信できますが、ホスト名は名前解決できず通信する事ができません

そこで、本記事ではVCN間のみならず、VPN接続元からもOCI環境の名前解決を行ってみようと思います

環境


まずは、上記のような構成を考えて見ます

  • AWS環境からLibreswanを用いて、OCI環境へVPN接続を行う
  • HUB VCNとSPOKE VCNはローカルVCNピアリングで接続されている
  • pingコマンドでは疎通できている(AWS->HUB VCN, AWS->SPOKE VCN, HUB VCN->SPOKE VCN)

0. 現状確認

AWS環境からアクセスしてみましたが、名前解決は当然行えないですが、IPアドレスでは疎通できています

当然、HUB VCNからも同様に、名前解決は行えないですがIPアドレスでは疎通できます

1. AWS環境から名前解決を行えるようにする


1. ネットワーキング -> 仮想クラウド・ネットワークとメニューを選択し、VPN接続されるVCNを選択し(今回は hub-vcn を選択) をクリックします
2. 仮想クラウド・ネットワークの詳細が表示されますので、図の DNSリゾルバ をクリックします

3. エンドポイントを表示し、エンドポイントの作成をクリックします
4. AWS環境から参照するエンドポイント情報を入力し、エンドポイントの作成をクリックします

  • サブネットはエンドポイントのIPが作成されるサブネットを指定します
  • エンドポイント・タイプは、今回はVPN接続時の名前解決が目的なので、リスニングを選択します
  • リスニングIPアドレスは、オプションとなっていますが、DNSクライアント側の設定を固定にするため、入力する事を推奨します

5. AWS環境側でリゾルバの追加を行う(エンドポイントのIPアドレスを追記します)
今回は、作業の簡便化と本題では無いため、 /etc/resolv.conf を編集するのみとしています

この作業により、AWS 環境から HUB VCN の名前解決を行う事が可能になります

2. VCN間で名前解決を行えるようにする


1. ネットワーキング -> 仮想クラウド・ネットワークとメニューを選択し、名前解決を行いたい側のVCNを選択し(今回は hub-vcn を選択) をクリックします
2. 仮想クラウド・ネットワークの詳細が表示されますので、図の DNSリゾルバ をクリックします

3. 関連付けられたプライベート・ビューを表示し、プライベート・ビューの管理をクリックします
4. 名前解決したいVCNを選択し(今回は spoke-vcn を選択)、変更の保存をクリックします

この作業により、HUB VCN から SPOKE VCN の DNS を利用して名前解決を行う事が可能になります

VCN 間の名前解決を行えたので、AWS 環境からも SPOKE VCN の名前解決を行う事が可能になります

まとめ

以上のように、エンドポイントを使用することで、OCIのDNS情報を外部環境へ開示する事ができますし、プライベート・ビューを活用する事で、VCN間の名前解決を行う事が可能になります
また、本記事では触れませんでしたが、プライベート・ゾーンの機能を用いれば、独自のゾーンとレコードを作成したりする事ができます
これらの機能を活用する事で、固定IPを設定する事のできないDBCSやMDSなどといったサービスも、より簡単に利用する事ができるのでは無いでしょうか
※DBCSでもプライベートIPアドレスを指定する事ができる様になったみたいですが、シングルノード構成の場合のみで、2ノードRACの場合は、記事執筆時点(03/08)ではIPアドレスは動的に取得されます

最後にこれらの機能のドキュメントは、下記 URL となりますが、記事執筆時点では、 Private DNS は Zone, View, Resolver の解説のみであるのと、日本語化対応状況もまだな状況なので、今後のドキュメントの拡充には期待したいところです


Oracle Cloud Infrastructure(OCI)専門 プロフェッショナルパートナー




Oracle Cloud
Return Top