Domain-Name-System

使用子域更改 debian 伺服器的主機名

  • March 31, 2020

我擁有一個域名mydomain.example,我使用 CloudFlare 作為 DNS。該域被配置為指向我在 GitHub 上託管的網站。

同時,我有一個來自 OVH 的 Debian VPS,我想將一個完全限定的域名 (FQDN) 關聯到它(而不是vps123456.ovh.net),我希望它是subdomain.mydomain.example.

我的長期計劃也是mydomain.example在這個 VPS 上託管我的網站 ( ),但現在為了避免搞砸,我想保持網站不變。

在使用Google進行一些研究後,我想出了以下步驟:

  1. 在 CloudFlare 中創建一條 A 記錄以指向VPSsubdomain.mydomain.example的 IP 地址192.0.2.91

  2. 將 VPS 的主機名更改為subdomain.mydomain.example

  3. /etc/hostname將from的內容更改vps123456.ovh.netsubdomain.mydomain.example

  4. 更改/etc/hostsfrom的內容

127.0.0.1   localhost
192.0.2.91  vps123456.ovh.net   vps123456


7.0.0.1   localhost
2.0.2.91  subdomain.mydomain.example  subdomain
 在不重新啟動的情況下應用更改:
tc/init.d/hostname.sh start


在此之後,我在做的時候`hostname`得到了`subdomain.mydomain.example`,這很好。但是當我打開一個新終端並嘗試`ssh user@subdomain.mydomain.example`時,它不起作用(超時)。


**更新:**澄清一下,我的最終目標不完全是能夠使用 SSH 連接到機器`ssh user@subdomain.mydomain.example`,而是將機器的 IP 地址與 FQDN 相關聯(這是一些文書工作所需要的:我必須連接到一些機構伺服器通過一台機器,出於安全原因,此網關機器的 IP 地址必須與 FQDN 相關聯。我正在嘗試為此目的設置我的 VPS)。

CloudFlare 可能需要一些(短)時間將您的新A記錄分發到其DNS伺服器。此外,舊A記錄subdomain.domain.example(或其先前不存在)可能仍在DNS您使用的遞歸解析器的記憶體中,持續時間由TTL舊記錄(或記錄中的最後一個數字,SOA如果它不存在)指示的時間量前)。檢查dig subdomain.domain.exampleIP 地址是否已經正確。

但是,您可能需要反向查找您的 IP 地址以返回您的域名(檢查dig -x 192.0.2.91)。這是通過添加PTRIP 地址所有者 (OVH) 的記錄來完成的。通常你可以通過一些網路界面改變你的反向查找。

您添加到的行/etc/hosts

192.0.2.91  subdomain.mydomain.example  subdomain

本地(在您的機器上)用作三個DNS記錄:

subdomain.mydomain.example. IN A 192.0.2.91
subdomain.                  IN A 192.0.2.91
91.2.0.191.in-addr.arpa.    IN PTR subdomain.mydomain.example.

現在你需要真實的PTR記錄。

引用自:https://serverfault.com/questions/1010116