SYSTEMD.RR(5) systemd.rr SYSTEMD.RR(5)

systemd.rr - قالب فایل‌های تعاریف رکوردهای منبع DNS در systemd

/etc/systemd/resolve/static.d/*.rr
/run/systemd/resolve/static.d/*.rr
/usr/local/lib/systemd/resolve/static.d/*.rr
/usr/lib/systemd/resolve/static.d/*.rr

فایل‌های *.rr می‌توانند برای تعریف مجموعه‌های رکورد منبع ("RRsetها") که باید به صورت محلی قابل حل‌وفصل باشند، مشابه سبک رکوردهای آدرس تعریف‌شده توسط /etc/hosts (برای جزئیات hosts(5) را ببینید) استفاده شوند. این فایل‌ها توسط systemd-resolved.service(8) خوانده می‌شوند، و برای تولید پاسخ‌های محلی به پرس‌وجوهای محلی منطبق با مجموعه رکورد منبع تعریف‌شده به کار می‌روند.

این فایل‌های دراپ-این (drop-in) با قالب JSON هستند. هر فایل می‌تواند شامل یک شیء تکی رکورد منبع DNS در سطح بالا، یا آرایه‌ای از یک یا چند شیء رکورد منبع DNS باشد. هر شیء RR حداقل دارای یک زیرشیء "key" شامل یک فیلد رشته‌ای "name" و یک فیلد عدد صحیح "type" (که شامل نوع RR به صورت عددی است) می‌باشد. بسته به نوع انتخاب‌شده، شیء RR فیلدهای زیر را نیز دارد:

•برای رکوردهای منبع A/AAAA، شیء RR باید یک فیلد "address" داشته باشد که روی یک آدرس IP قالب‌بندی‌شده به صورت رشته، یا آرایه‌ای شامل ۴ یا ۱۶ عدد صحیح بی‌علامت ۸-بیتی برای آدرس IP تنظیم شده باشد.
•برای رکوردهای منبع PTR/NS/CNAME/DNAME، شیء RR باید یک فیلد "name" داشته باشد که روی نامی که رکورد باید به آن اشاره کند تنظیم شده باشد.

این سریال‌سازی JSON از رکوردهای منبع DNS با مقدار بازگردانده‌شده توسط resolvectl مطابقت دارد.

در حال حاضر هیچ نوع RR دیگری پشتیبانی نمی‌شود.

مثال 1. یک رکورد ساده A

برای اینکه جستجوهای آدرس محلی برای "foobar.example.com" به آدرس IPv4 با مقدار 192.168.100.1 حل شوند، فایل /run/systemd/resolve/static.d/foobar_example_com.rr را ایجاد کنید:

{
        "key" : {
                "type" : 1,
                "name" : "foobar.example.com"
        },
        "address" : [ 192, 168, 100, 1 ]
}

systemd(1), systemd-resolved.service(8), resolved.conf(5), hosts(5), resolvectl(1)

systemd 261.2