Skip to content

Instantly share code, notes, and snippets.

@niratama
Created May 27, 2025 09:55
Show Gist options
  • Save niratama/f6be3e2938e80344712b646728976bd9 to your computer and use it in GitHub Desktop.
Save niratama/f6be3e2938e80344712b646728976bd9 to your computer and use it in GitHub Desktop.
Synology SRMでローカルDNSにCNAMEを追加する

Synology SRMでローカルDNSにCNAMEを追加する

SynologyのルータのOSであるSRMでは、ローカルDNSとDHCP機能にdnsmasqを利用しているっぽい。

このへんの設定ファイルは/etc/dhcpd/以下にあって、各ネットワークセグメントなどでいくつかに分割されたファイルを、
ネットワーク起動スクリプトの中でひとかたまり(/etc/dhcpd/dhcpd.conf)にして使っているようだ。

このファイルを直接いじっても、なんかのタイミングで上書きされてしまう可能性が高いけれど、このひとかたまりにする処理がワイルドカードをつかってるので、
システムで使ってないファイルを用意しておけばうまいこと紛れ込ませることができる。

で、既存マシンに別名をつけたい場合、DNSのCNAMEが使えるので、以下のような設定ファイルを用意してやればよい。

ファイル名はdhcpd-${interface}-${tag}.confなら読み込んでくれるので、今回はこんな感じにしてみた。

/etc/dhcpd/dhcpd-static-cname.conf

cname=foobar.example.jp,my-pc

/etc/dhcpd/dhcpd-static-cname.info

enable="yes"

このファイルを用意してルータを再起動(ネットワーク再起動でもいけるだろうけど念の為)してやれば、
/etc/dhcpd/dhcpd.confがうまいこと書き換えられてdnsmasqに読み込まれる。

今回CNAMEの設定に使ったけど、その他dnsmasqの設定ならなんでもいけるはず。詳しくは Man page of DNSMASQを参照。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment