IBM Cloud Internet Services (CIS) にサブドメインを登録する


# やりたいこと
IBM Cloud Domain Name Service で管理しているドメイン「ibmjapan.com」のサブドメイン「khayama.ibmjapan.com」だけを CIS に登録します。

>構成イメージ
>![Kobito.jrrU9Z.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101361/784ab17e-3752-3d2b-c7c1-f2a2fdc5602d.png "Kobito.jrrU9Z.png")


# IBM Cloud Domain Name Service で管理するドメイン情報

こちらの画面からドメイン情報を確認できます。
https://cloud.ibm.com/classic/services/domains
![Kobito.ImSA32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101361/cdf7da6b-18c1-4244-7556-4d8eb32e758f.png "Kobito.ImSA32.png")

コマンドでも同様に ibmjapan.com ドメインが IBM Cloud (SoftLayer) のネームサーバーで名前解決されていることがわかります。

```
$ dig +short NS ibmjapan.com @9.9.9.9
ns1.softlayer.com.
ns2.softlayer.com.
```


「ibmjapan.com」自体の名前解決を CIS に委任するには、こちらの記事を参考にしてください

>[IBM Cloud Internet Services (CIS)を使ってみた（オーダー・初期設定） - Qiita](https://qiita.com/y_tama/items/9151b4c981abbb65c53d#%E3%83%AC%E3%82%B8%E3%82%B9%E3%83%88%E3%83%A9%E3%81%AEns%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92cis%E3%81%AE%E3%82%82%E3%81%AE%E3%81%AB%E5%A4%89%E6%9B%B4)

# CIS のドメイン登録画面で指定のネームサーバーを取得
サービスインスタンスの CIS 管理画面から、ドメイン登録の手順に従い、NSレコードで指定すべきネームサーバーを取得します。
![Kobito.h4UbTK.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101361/7523f935-c13c-838a-c0f0-da295a7676fa.png "Kobito.h4UbTK.png")
![Kobito.8F3z7L.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101361/92afe761-1e33-324f-00df-d44d9d5fb8a9.png "Kobito.8F3z7L.png")

# サブドメインの名前解決を CIS ネームサーバーに委任する
IBM Cloud Domain Name Service で管理されている場合、GUIからNSレコードを登録できません。
そのため、CLIでNSレコードの登録を行う必要があります。

>[IBM Cloud Infrastructure (SoftLayer) でDNSのNSレコードを設定する - Qiita](https://qiita.com/teruq/items/32343fc4ac563e382f75)
>![Kobito.bXjvRv.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101361/6a447704-554a-e981-a214-88e7fc126051.png "Kobito.bXjvRv.png")

`slcli` コマンドを使います。

```
$ slcli dns record-list ibmjapan.com
:...........:.........:......:.......:...........................:
:     id    :  record : type : ttl   : data                      :
:...........:.........:......:.......:...........................:
: 103446293 :       @ : SOA  : 86400 : ns1.softlayer.com.        :
: 103446295 :       @ :  NS  : 86400 : ns1.softlayer.com.        :
: 103446297 :       @ :  NS  : 86400 : ns2.softlayer.com.        :
:...........:.........:......:.......:...........................:

```

```
$ slcli dns record-add khayama NS ns001.name.cloud.ibm.com. --zone=ibmjapan.com --ttl=900
NS record added successfully
$ slcli dns record-add khayama NS ns008.name.cloud.ibm.com. --zone=ibmjapan.com --ttl=900
NS record added successfully
```

```
$ slcli dns record-list ibmjapan.com
:...........:.........:......:.......:...........................:
:     id    :  record : type : ttl   : data                      :
:...........:.........:......:.......:...........................:
: 103446293 :       @ : SOA  : 86400 : ns1.softlayer.com.        :
: 103446295 :       @ :  NS  : 86400 : ns1.softlayer.com.        :
: 103446297 :       @ :  NS  : 86400 : ns2.softlayer.com.        :
: 107583675 : khayama :  NS  : 900   : ns001.name.cloud.ibm.com. :
: 107583677 : khayama :  NS  : 900   : ns008.name.cloud.ibm.com. :
:...........:.........:......:.......:...........................:
```

# NS レコード登録が反映されたことの確認
NS レコードの反映には、最大24時間かかるので、気長に待ちましょう。
以下のコマンドにて、反映されたかどうかを確認できます。

```
$ dig +short NS khayama.ibmjapan.com @9.9.9.9
ns001.name.cloud.ibm.com.
ns008.name.cloud.ibm.com.
```

CIS 管理画面では、1時間に1回だけ、以下の「Check name servers」ボタンを押せます。
![Kobito.2ymZOG.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101361/bfbbc31d-19a3-ff2e-750b-c0f5872d7364.png "Kobito.2ymZOG.png")

# CIS 管理画面でのドメイン登録確認
以下の画面のように、ドメインが Active となっていれば登録完了です。
![Kobito.qPeuIp.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/101361/95c34077-52c9-88e5-df0c-f186d9e23437.png "Kobito.qPeuIp.png")


# さいごに
ちなみに、Enterprise Plan であれば、複数ドメインの登録に対応しているので、CIS に ibmjapan.com を登録した場合でも、今回と同様の手順で（サブドメイン委任先としてNSレコードを登録することで）同一の CIS サービスインスタンスに khayama.ibmjapan.com を2つ目のドメインとして登録できます。
ぜひお試しください。