Если попытаться добавить TXT-запись длиннее 255 символов, то мы получим сообщение вида
dns_rdata_fromtext: buffer-0x820a564e0:1: near '"v=DKIM1;': syntax errorили
dns_rdata_fromtext: /path/to/zone.file:22: syntax error
zone sitename.local/IN: loading from master file /path/to/zone.file failed: syntax error
zone sitename.local/IN: not loaded due to errorsИз формулировки «syntax error» совсем неочевидно что проблема заключается в слишком длинной строке.
Обойти данное ограничение довольно просто. Достаточно разбить длинную строку на несколько подстрок не превышающих 255 символов(байт). Можно набор подстрок обрамить круглыми скобками «(» и «)». В таком случае станет возможным каждую подстроку в файле зоны разместить на новой строке.
Например:
dkim._domainkey TXT ("v=DKIM1; k=rsa; t=s; s=email; "
"p=MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAplBJr4PrtMx4rP99lo8dz2xQsDwPTqytBzuDyGNhIsKcCm9zldjFp1otgAj/Bd+ggFuRW5sr4HTB+NW1FzzDVXjBN72z8EsA1l9sKw6YbNoVtqJma4/x85bhKHZRTipdM3+gY8Fo0RVQL50S50KjaaPnLdAkircIRWCiEY10Lj1x9f8Ab3WxT6jGygl0Vt3w/C7BOffJ7ZYXaLcDQ"
"y3l+Fh1Wp8QaQpoY4K6QcJnnOUansZbTmmXODvFWI6UHsW+lTWGgW4REF3W0JEC6QCTh2Gl09SYtAzjoG7sjs1HzxG3/7VZlVVaryDjjSj/HnhDRRVOEZHt3N9hD9YNmjw+ynAFZ5sXuLkWt9DL7TmiTd/fu9labDetidvEHOEAYVaGKUsN7UGMgyzo20Qucij72Qh3Qr/QSlk5mo2ZfAgKbmED1z/Z0I9c+UVfxwoBq4YfPUuuUXDwYfOZaOLP"
"SLwqdvMbH7Cr9uDj6scX0a32cXz9W3LPUMmvdcTp079/h49EC5w+kWMtj6ARtEMcN+n/EfGu7qGADHIVUWB1F6xt90Kt4jI60FHrh0PqwMRTlDtm1tKeyDvUqpga5N5gtQburjPLeLjgpgk1+2vvLK0LHYafHyMTV5rGPjqm81GDMsrdRhjcKTsjvMGpH/b85MMyxDPzeQASKAD+RTj5wjTM70UCAwEAAQ=="
)При динамическом обновлении зоны в вызов nsupdate потребутеся добавить параметр «-v»
# nsupdate -k /path/to/example.com.key -v
> server localhost
> zone sitename.local.
> update add dkim._domainkey.sitename.local. 21600 IN TXT "part 1" "part 2" … "part n"