Xserver レンタルサーバーの DNS 管理機能で NS レコードのサブドメイン部分にアンダースコアが使えない話
私の最近の Web サーバー事情
こんにちは。debiru です。
個人用 Web サイトとして私は長年(いつからだろうか)「さくらの VPS」を使って Web サーバーを構築してきました。従量課金は性に合わないので AWS やクラウド系は使ったことがなく専ら VPS サーバーを愛用しています。さくらの VPS なりサービスは満足しているのですが、価格帯だけが気になっています(後述)。
2023年まで、さくら VPS 1G(メモリ 1GB)を使ってきました。Ubuntu 22.04 まではそれでなんとかなったのですが、2024年に Ubuntu 24.04 をインストールして環境構築していたときに、どうもメモリ不足でミドルウェア(Ruby や Rust)のインストールに失敗してしまいました。そこで、メモリをもう少し増やそうと思い 4G プランへの移行を決意しました。
Xserver VPS への移行
さくら VPS 1G だと年間 1 万円ほどでしたが、さくら VPS 4G になると年間 4 万円ほどになります。月額では単純計算で 1000 円弱だったものが 4000 円弱になるわけです。ちょっとそれはお高いかなと思ってしまい、別サービスへの移行を検討しました。そこで個人的に候補に挙がったのが Xserver でした。
Xserver は2022年9月に VPS サービスを開始しました。また 4G プランだと 2000 円弱で利用できる料金体系となっています。Xserver は後述する mentuzzle でも使っていることもあり、Xserver VPS 4G を使うことに決めました。私のサーバー構築手順書も公開していますが、これで構築したサーバーは快適に利用できています。
mentuzzle という心理機能診断サイト
メンタズルと読みます。私が個人的に応援しているイラストレーターの kion さんがパートナーのはぎぃさんと立ち上げた心理機能診断系のブランドで、そのコンテンツ開発(主にバックエンド開発)に協力させてもらっています。kion さんの白黒な作品はいろいろ購入させていただきました。素敵です。
わぁ!ふうせん!いっぱいなのです!
— debiru / くぁーる (@debiru_R) 2023年8月15日
僕の白黒アイテムもいっぱいなのです。
きおんさんのおかげで幸せなのです✨ pic.twitter.com/zfkt8O0IMx
mentuzzle の Xserser レンタルサーバーでの問題
https://mentuzzle.com/ は Xserver のレンタルサーバーで稼働しています。サーバーの契約は kion さんがもともとされていたので、私がサーバー選定に出る幕はありませんでした。レンタルサーバーが悪いというわけではないですが、ともかくレンタルサーバーを使っているわけです。
そして、ある日(最近)、Xserver のレンタルサーバー固有の問題に遭遇しました。Xserver ではレンタルサーバー用の DNS 管理機能サービスがあるのですが、そこで NS レコードのホスト名(というかサブドメイン部分)にアンダースコアを含む文字列を設定しようとしたところ、システム側の制限によって『NSレコードではアンダーバー「_」は使用できません。』とエラーになってしまったのです。
実は2024年9月23日に mentuzzle があるツイートをきっかけにバズり、アクセス集中してサーバーが重くなるという出来事がありました。そこでその日に急遽サーバーを増設して負荷分散(ロードバランサーまでは入れられないので、DNS ラウンドロビンで Web サーバー振り分け)をしようとして、新しいサーバー上で SSL サーバー証明書を発行できるように _acme-challenge サブドメインを NS レコードで委任したかったのです。
そしたら、それができないとエラーになったので、その場で AWS Route 53 へ mentuzzle.com の NS を移転して対応しました。NS 移転は通常、レジストリ側の NS レコードの TTL だけ待つ必要がありますが、今回は Let's Encrypt での DNS-01 チャレンジにさえ通ればよいので何時間も待つことなく、キャッシュがないと信じてレジストリ側の NS 変更をした直後に SSL サーバー証明書の発行を試みました。無事、新しいサーバー上で証明書を発行することができました。
そんなこんなで、サーバーが重くなった問題は時間経過によりなんとかなったのですが、Xserver のレンタルサーバー上の DNS 管理機能で NS レコードのサブドメイン部分にアンダースコアが使えないのは不便でしかありません。ちなみに、Xserver の VPS 上の DNS 管理機能ではこれが可能です。この件について問い合わせました。すると、まあ案の定というか、最初は「各サービスごとによって仕様がことなる理由につきましては非公開事項となり、お伝えすることができません」と頓珍漢な回答をされましたが、その後の追加質問に対してはだいぶまともに対応をしていただけました。
NS レコードのサブドメイン部分にアンダースコアが使えない問題について
2024年9月時点での事実としては、まず「Xserver レンタルサーバーの DNS 管理機能では NS レコードのサブドメイン部分にアンダースコアが使えない」というのがあります。一方で「Xserver VPS の DNS 管理機能では問題なく設定可能」です。
今回の問い合わせで「Xserver レンタルサーバーでもアンダースコアを使えるようにしてくれ」と要望したところ、現状で設定したければ「問い合わせしてもらえれば個別対応は可能」という回答でした。また、「システム上でそれができない問題については、改修することを予定する」とのことで、私の問い合わせをきっかけに仕様変更してくれることになりました。
なぜアンダースコアを弾いていたのかについても問い合わせましたが、それについては「明確な意図がありアンダーバーをホスト名に含められない仕様としていたわけではございませんでした」とのことで、(正確な意味での)ホスト名ではアンダースコアが使えないという RFC 要件を、(類似の概念である)サブドメイン部分に誤って適用してしまったのかなと推測する次第ですが、何はともあれ、設定できるように改善してくれるとのことなので気長に待つことにします。2024年中に対応されなかったら、また問い合わせなり続報を書こうかと思います。
おわりに
今回は私がさくら VPS から Xserver VPS に移転した話と、mentuzzle の話と、Xserver の NS レコードの問題について触れさせていただきました。
余談ですが、さくらのレンタルサーバーは Web アクセシビリティ界隈から顰蹙を買っているという話題もありましたね。さくらインターネットに送った意見 - kidachi.kazuhi.to
ということで、https://mentuzzle.com/ を今後ともよろしくお願いします。