{"id":18635,"date":"2024-11-19T20:33:30","date_gmt":"2024-11-19T12:33:30","guid":{"rendered":"https:\/\/fwq.ai\/blog\/?p=18635"},"modified":"2024-11-19T20:33:30","modified_gmt":"2024-11-19T12:33:30","slug":"bind%e4%b9%8brndc%e4%bb%8b%e7%bb%8d%e5%8f%8a%e4%bd%bf%e7%94%a8","status":"publish","type":"post","link":"https:\/\/fwq.ai\/blog\/18635\/","title":{"rendered":"Bind\u4e4brndc\u4ecb\u7ecd\u53ca\u4f7f\u7528"},"content":{"rendered":"<p>rndc\uff08Remote Name Domain Controllerr\uff09\u662f\u4e00\u4e2a\u8fdc\u7a0b\u7ba1\u7406bind\u7684\u5de5\u5177\uff0c\u901a\u8fc7\u8fd9\u4e2a\u5de5\u5177\u53ef\u4ee5\u5728\u672c\u5730\u6216\u8005\u8fdc\u7a0b\u4e86\u89e3\u5f53\u524d\u670d\u52a1\u5668\u7684\u8fd0\u884c\u72b6\u51b5\uff0c\u4e5f\u53ef\u4ee5\u5bf9\u670d\u52a1\u5668\u8fdb\u884c\u5173\u95ed\u3001\u91cd\u8f7d\u3001\u5237\u65b0\u7f13\u5b58\u3001\u589e\u52a0\u5220\u9664zone\u7b49\u64cd\u4f5c\u3002<\/p>\n<p><span id=\"more-1603\"><\/span><br \/>\n\u4f7f\u7528rndc\u53ef\u4ee5\u5728\u4e0d\u505c\u6b62DNS\u670d\u52a1\u5668\u5de5\u4f5c\u7684\u60c5\u51b5\u8fdb\u884c\u6570\u636e\u7684\u66f4\u65b0\uff0c\u4f7f\u4fee\u6539\u540e\u7684\u914d\u7f6e\u6587\u4ef6\u751f\u6548\u3002\u5728\u5b9e\u9645\u60c5\u51b5\u4e0b\uff0cDNS\u670d\u52a1\u5668\u662f\u975e\u5e38\u7e41\u5fd9\u7684\uff0c\u4efb\u4f55\u77ed\u65f6\u95f4\u7684\u505c\u987f\u90fd\u4f1a\u7ed9\u7528\u6237\u7684\u4f7f\u7528\u5e26\u6765\u5f71\u54cd\u3002\u56e0\u6b64\uff0c\u4f7f\u7528rndc\u5de5\u5177\u53ef\u4ee5\u4f7fDNS\u670d\u52a1\u5668\u66f4\u597d\u5730\u4e3a\u7528\u6237\u63d0\u4f9b\u670d\u52a1\u3002\u5728\u4f7f\u7528rndc\u7ba1\u7406bind\u524d\u9700\u8981\u4f7f\u7528rndc\u751f\u6210\u4e00\u5bf9\u5bc6\u94a5\u6587\u4ef6\uff0c\u4e00\u534a\u4fdd\u5b58\u4e8erndc\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\uff0c\u53e6\u4e00\u534a\u4fdd\u5b58\u4e8ebind\u4e3b\u914d\u7f6e\u6587\u4ef6\u4e2d\u3002rndc\u7684\u914d\u7f6e\u6587\u4ef6\u4e3a\/etc\/rndc.conf\uff0c\u5728CentOS\u6216\u8005RHEL\u4e2d\uff0crndc\u7684\u5bc6\u94a5\u4fdd\u5b58\u5728\/etc\/rndc.key\u6587\u4ef6\u4e2d\u3002rndc\u9ed8\u8ba4\u76d1\u542c\u5728953\u53f7\u7aef\u53e3\uff08TCP\uff09\uff0c\u5176\u5b9e\u5728bind9\u4e2drndc\u9ed8\u8ba4\u5c31\u662f\u53ef\u4ee5\u4f7f\u7528\uff0c\u4e0d\u9700\u8981\u914d\u7f6e\u5bc6\u94a5\u6587\u4ef6\u3002<\/p>\n<p>rndc\u4e0eDNS\u670d\u52a1\u5668\u5b9e\u884c\u8fde\u63a5\u65f6\uff0c\u9700\u8981\u901a\u8fc7\u6570\u5b57\u8bc1\u4e66\u8fdb\u884c\u8ba4\u8bc1\uff0c\u800c\u4e0d\u662f\u4f20\u7edf\u7684\u7528\u6237\u540d\/\u5bc6\u7801\u65b9\u5f0f\u3002\u5728\u5f53\u524d\u7248\u672c\u4e0b\uff0crndc\u548cnamed\u90fd\u53ea\u652f\u6301HMAC-MD5\u8ba4\u8bc1\u7b97\u6cd5\uff0c\u5728\u901a\u4fe1\u4e24\u7aef\u4f7f\u7528\u9884\u5171\u4eab\u5bc6\u94a5\u3002\u5728\u5f53\u524d\u7248\u672c\u7684rndc \u548c named\u4e2d\uff0c\u552f\u4e00\u652f\u6301\u7684\u8ba4\u8bc1\u7b97\u6cd5\u662fHMAC-MD5\uff0c\u5728\u8fde\u63a5\u7684\u4e24\u7aef\u4f7f\u7528\u5171\u4eab\u5bc6\u94a5\u3002\u5b83\u4e3a\u547d\u4ee4\u8bf7\u6c42\u548c\u540d\u5b57\u670d\u52a1\u5668\u7684\u54cd\u5e94\u63d0\u4f9b TSIG\u7c7b\u578b\u7684\u8ba4\u8bc1\u3002\u6240\u6709\u7ecf\u7531\u901a\u9053\u53d1\u9001\u7684\u547d\u4ee4\u90fd\u5fc5\u987b\u88ab\u4e00\u4e2a\u670d\u52a1\u5668\u6240\u77e5\u9053\u7684 key_id \u7b7e\u540d\u3002\u4e3a\u4e86\u751f\u6210\u53cc\u65b9\u90fd\u8ba4\u53ef\u7684\u5bc6\u94a5\uff0c\u53ef\u4ee5\u4f7f\u7528rndc-confgen\u547d\u4ee4\u4ea7\u751f\u5bc6\u94a5\u548c\u76f8\u5e94\u7684\u914d\u7f6e\uff0c\u518d\u628a\u8fd9\u4e9b\u914d\u7f6e\u5206\u522b\u653e\u5165named.conf\u548crndc\u7684\u914d\u7f6e\u6587\u4ef6rndc.conf\u4e2d\u3002<\/p>\n<h1>\u4e00 \u3001\u8bed\u6cd5<\/h1>\n<pre>Usage: rndc [-b address] [-c config] [-s server] [-p port]\r\n[-k key-file ] [-y key] [-r] [-V] command\r\n\r\ncommand is one of the following:\r\n\r\n<strong>addzone zone [class [view]] { zone-options }<\/strong>\r\n              Add zone to given view. Requires allow-new-zones option.\r\n<strong>delzone [-clean] zone [class [view]]<\/strong>\r\n              Removes zone from given view.\r\n<strong>dnstap -reopen<\/strong>\r\n              Close, truncate and re-open the DNSTAP output file.\r\n<strong>dnstap -roll count<\/strong>\r\n              Close, rename and re-open the DNSTAP output file(s).\r\n<strong>dumpdb [-all|-cache|-zones|-adb|-bad|-fail] [view ...]<\/strong>\r\n               Dump cache(s) to the dump file (named_dump.db).\r\n<strong>flush<\/strong>          Flushes all of the server's caches.\r\n<strong>flush [view]<\/strong>   Flushes the server's cache for a view.\r\n<strong>flushname name [view]<\/strong>\r\n               Flush the given name from the server's cache(s)\r\n<strong>flushtree name [view]<\/strong>\r\n               Flush all names under the given name from the server's cache(s)\r\n<strong>freeze<\/strong>         Suspend updates to all dynamic zones.\r\n<strong>freeze zone [class [view]]<\/strong>\r\n               Suspend updates to a dynamic zone.\r\n<strong>halt<\/strong>           Stop the server without saving pending updates.\r\n<strong>halt -p<\/strong>        Stop the server without saving pending updates reporting\r\n               process id.\r\n<strong>loadkeys zone [class [view]]<\/strong>\r\n              Update keys without signing immediately.\r\n<strong>managed-keys refresh [class [view]]<\/strong>\r\n              Check trust anchor for RFC 5011 key changes\r\n<strong>managed-keys status [class [view]]<\/strong>\r\n              Display RFC 5011 managed keys information\r\n<strong>managed-keys sync [class [view]]<\/strong>\r\n              Write RFC 5011 managed keys to disk\r\n<strong>modzone zone<\/strong> [class [view]] { zone-options }\r\n              Modify a zone's configuration.\r\n              Requires allow-new-zones option.\r\n<strong>notify zone [class [view]]<\/strong>\r\n              Resend NOTIFY messages for the zone.\r\n<strong>notrace<\/strong>       Set debugging level to 0.\r\n<strong>nta -dump     <\/strong>List all negative trust anchors.\r\n<strong>nta [-lifetime duration] [-force] domain [view]<\/strong>\r\n              Set a negative trust anchor, disabling DNSSEC validation\r\n              for the given domain.Using -lifetime specifies the duration of the NTA, \r\n              up to one week.Using -force prevents the NTA from expiring before its\r\n              full lifetime, even if the domain can validate sooner.\r\n<strong>nta -remove domain [view]<\/strong>\r\n              Remove a negative trust anchor, re-enabling validation\r\n              for the given domain.\r\n<strong>querylog newstate<\/strong>\r\n              Enable \/ disable query logging.\r\n<strong>reconfig <\/strong>     Reload configuration file and new zones only.\r\n<strong>recursing <\/strong>    Dump the queries that are currently recursing (named.recursing)\r\n<strong>refresh zone [class [view]]<\/strong>\r\n              Schedule immediate maintenance for a zone.\r\n<strong>reload<\/strong>        Reload configuration file and zones.\r\n<strong>reload zone [class [view]]<\/strong>\r\n              Reload a single zone.\r\n<strong>retransfer zone [class [view]]<\/strong>\r\n              Retransfer a single zone without checking serial number.\r\n<strong>scan <\/strong>         Scan available network interfaces for changes.\r\n<strong>secroots [view ...]<\/strong>\r\n              Write security roots to the secroots file.\r\n<strong>showzone zone [class [view]]<\/strong>\r\n               Print a zone's configuration.\r\n<strong>sign zone [class [view]]<\/strong>\r\n               Update zone keys, and sign as needed.\r\n<strong>signing -clear all zone [class [view]]<\/strong>\r\n               Remove the private records for all keys that have\r\n               finished signing the given zone.\r\n<strong>signing -clear &lt;keyid&gt;\/&lt;algorithm&gt; zone [class [view]]<\/strong>\r\n               Remove the private record that indicating the given key\r\n               has finished signing the given zone.\r\n<strong>signing -list zone [class [view]]<\/strong>\r\n               List the private records showing the state of DNSSEC\r\n               signing in the given zone.\r\n<strong>signing -nsec3param \r\n<\/strong>               hash flags iterations salt zone [class [view]]\r\n               Add NSEC3 chain to zone if already signed.\r\n               Prime zone with NSEC3 chain if not yet signed.\r\n<strong>signing -nsec3param none zone [class [view]]<\/strong>\r\n               Remove NSEC3 chains from zone.\r\n<strong>signing -serial &lt;value&gt; zone [class [view]]<\/strong>\r\n               Set the zones's serial to &lt;value&gt;.\r\n<strong>stats <\/strong>         Write server statistics to the statistics file.\r\n<strong>status<\/strong>         Display status of the server.\r\n<strong>stop <\/strong>          Save pending updates to master files and stop the server.\r\n<strong>stop -p<\/strong>        Save pending updates to master files and stop the server\r\n               reporting process id.\r\n<strong>sync [-clean]  <\/strong>Dump changes to all dynamic zones to disk, and optionally\r\n               remove their journal files.\r\n<strong>sync [-clean] zone [class [view]]<\/strong>\r\n               Dump a single zone's changes to disk, and optionally\r\n               remove its journal file.\r\n<strong>thaw<\/strong>           Enable updates to all dynamic zones and reload them.\r\n<strong>thaw zone [class [view]]<\/strong>\r\n               Enable updates to a frozen dynamic zone and reload it.\r\n<strong>trace<\/strong>          Increment debugging level by one.\r\n<strong>trace level<\/strong>    Change the debugging level.\r\n<strong>tsig-delete keyname [view]<\/strong>\r\n               Delete a TKEY-negotiated TSIG key.\r\n<strong>tsig-list<\/strong>      List all currently active TSIG keys, including both statically\r\n               configured and TKEY-negotiated keys.\r\n<strong>validation newstate [view]<\/strong>\r\n               Enable \/ disable DNSSEC validation.\r\n<strong>zonestatus zone [class [view]]<\/strong>\r\n               Display the current status of a zone.<\/pre>\n<h1>\u4e8c\u3001rndc\u5e38\u7528\u547d\u4ee4\uff1a<\/h1>\n<ol>\n<li>status #\u663e\u793abind\u670d\u52a1\u5668\u7684\u5de5\u4f5c\u72b6\u6001<\/li>\n<li>reload #\u91cd\u65b0\u52a0\u8f7d\u914d\u7f6e\u6587\u4ef6\u548c\u533a\u57df\u6587\u4ef6<\/li>\n<li>reload zone_name #\u91cd\u65b0\u52a0\u8f7d\u6307\u5b9a\u533a\u57df<\/li>\n<li>reconfig \u00a0 #\u91cd\u8bfb\u914d\u7f6e\u6587\u4ef6\u5e76\u52a0\u8f7d\u65b0\u589e\u7684\u533a\u57df<\/li>\n<li>querylog \u00a0 #\u5173\u95ed\u6216\u5f00\u542f\u67e5\u8be2\u65e5\u5fd7<\/li>\n<li>dumpdb #\u5c06\u9ad8\u901f\u7f13\u5b58\u8f6c\u50a8\u5230\u8f6c\u50a8\u6587\u4ef6 (named_dump.db)<\/li>\n<li>freeze \u00a0 \u00a0#\u6682\u505c\u66f4\u65b0\u6240\u6709\u52a8\u6001zone<\/li>\n<li>freeze zone [class [view]]#\u6682\u505c\u66f4\u65b0\u4e00\u4e2a\u52a8\u6001zone<\/li>\n<li>flush [view]\u00a0 #\u5237\u65b0\u670d\u52a1\u5668\u7684\u6240\u6709\u9ad8\u901f\u7f13\u5b58<\/li>\n<li>flushname name \u00a0 #\u4e3a\u67d0\u4e00\u89c6\u56fe\u5237\u65b0\u670d\u52a1\u5668\u7684\u9ad8\u901f\u7f13\u5b58<\/li>\n<li>stats \u00a0 #\u5c06\u670d\u52a1\u5668\u7edf\u8ba1\u4fe1\u606f\u5199\u5165\u7edf\u8ba1\u6587\u4ef6\u4e2d<\/li>\n<li>stop \u00a0 #\u5c06\u6682\u6302\u66f4\u65b0\u4fdd\u5b58\u5230\u4e3b\u6587\u4ef6\u5e76\u505c\u6b62\u670d\u52a1\u5668<\/li>\n<li>halt \u00a0 #\u505c\u6b62\u670d\u52a1\u5668\uff0c\u4f46\u4e0d\u4fdd\u5b58\u6682\u6302\u66f4\u65b0<\/li>\n<li>trace \u00a0 #\u6253\u5f00debug, debug\u6709\u7ea7\u522b\u7684\u6982\u5ff5\uff0c\u6bcf\u6267\u884c\u4e00\u6b21\u63d0\u5347\u4e00\u6b21\u7ea7\u522b<\/li>\n<li>trace LEVEL \u00a0 #\u6307\u5b9a debug \u7684\u7ea7\u522b, trace 0 \u8868\u793a\u5173\u95eddebug<\/li>\n<li>notrace #\u5c06\u8c03\u8bd5\u7ea7\u522b\u8bbe\u7f6e\u4e3a 0<\/li>\n<li>restart #\u91cd\u65b0\u542f\u52a8\u670d\u52a1\u5668\uff08\u5c1a\u672a\u5b9e\u73b0\uff09<\/li>\n<li>addzone zone\u00a0[class [view]] { zone-options } #\u589e\u52a0\u4e00\u4e2azone<\/li>\n<li>delzone zone [class [view]]#\u5220\u9664\u4e00\u4e2azone<\/li>\n<li>tsig-delete keyname [view]#\u5220\u9664\u4e00\u4e2aTSIG key<\/li>\n<li>tsig-list#\u67e5\u8be2\u5f53\u524d\u6709\u6548\u7684TSIG\u5217\u8868<\/li>\n<li>validation newstate [view]#\u5f00\u542f\/\u5173\u95eddnssec<\/li>\n<\/ol>\n<p>\u8bf4\u660e\uff1arndc\u547d\u4ee4\u540e\u9762\u53ef\u4ee5\u8ddf\u201d-s\u201d\u548c\u201d-p\u201d\u9009\u9879\u8fde\u63a5\u5230\u8fdc\u7a0bDNS\u670d\u52a1\u5668\uff0c\u4ee5\u4fbf\u5bf9\u8fdc\u7a0bDNS\u670d\u52a1\u5668\u8fdb\u884c\u7ba1\u7406\uff0c\u4f46\u6b64\u65f6\u53cc\u65b9\u7684\u5bc6\u94a5\u8981\u4e00\u81f4\u624d\u80fd\u6b63\u5e38\u8fde\u63a5\u3002\u5728\u8bbe\u7f6erndc.conf\u65f6\u4e00\u5b9a\u8981\u6ce8\u610fkey\u7684\u540d\u79f0\u548c\u9884\u5171\u4eab\u5bc6\u94a5\u4e00\u5b9a\u8981\u548cnamed.conf\u76f8\u540c\uff0c\u5426\u5219rndc\u5de5\u5177\u65e0\u6cd5\u6b63\u5e38\u5de5\u4f5c\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>rndc\uff08Remote Name Domain Controllerr\uff09\u662f\u4e00\u4e2a\u8fdc\u7a0b\u7ba1\u7406bind\u7684\u5de5\u5177\uff0c\u901a\u8fc7\u8fd9\u4e2a\u5de5\u5177\u53ef\u4ee5\u5728\u672c\u5730\u6216\u8005\u8fdc\u7a0b\u4e86\u89e3\u5f53\u524d\u670d\u52a1\u5668\u7684\u8fd0\u884c\u72b6\u51b5\uff0c\u4e5f\u53ef\u4ee5\u5bf9\u670d\u52a1\u5668\u8fdb\u884c\u5173\u95ed\u3001\u91cd\u8f7d\u3001\u5237\u65b0\u7f13\u5b58\u3001\u589e\u52a0\u5220\u9664zone\u7b49\u64cd\u4f5c\u3002 \u4f7f\u7528rndc\u53ef\u4ee5\u5728\u4e0d\u505c\u6b62DNS\u670d\u52a1\u5668\u5de5\u4f5c\u7684\u60c5\u51b5\u8fdb\u884c\u6570\u636e\u7684\u66f4\u65b0\uff0c\u4f7f\u4fee\u6539\u540e\u7684\u914d\u7f6e\u6587\u4ef6\u751f\u6548\u3002\u5728\u5b9e\u9645\u60c5\u51b5\u4e0b\uff0cDNS\u670d\u52a1\u5668\u662f\u975e\u5e38\u7e41\u5fd9\u7684\uff0c\u4efb\u4f55\u77ed\u65f6\u95f4\u7684\u505c\u987f\u90fd\u4f1a\u7ed9\u7528\u6237\u7684\u4f7f\u7528\u5e26\u6765\u5f71\u54cd\u3002\u56e0\u6b64\uff0c\u4f7f\u7528rndc\u5de5\u5177\u53ef\u4ee5\u4f7fDNS\u670d\u52a1\u5668\u66f4\u597d\u5730\u4e3a\u7528\u6237\u63d0\u4f9b\u670d\u52a1\u3002\u5728\u4f7f\u7528rndc\u7ba1\u7406bind\u524d\u9700\u8981\u4f7f\u7528rndc\u751f\u6210\u4e00\u5bf9\u5bc6\u94a5\u6587\u4ef6\uff0c\u4e00\u534a\u4fdd\u5b58\u4e8erndc\u7684\u914d\u7f6e\u6587\u4ef6\u4e2d\uff0c\u53e6\u4e00\u534a\u4fdd\u5b58\u4e8ebind\u4e3b\u914d\u7f6e\u6587\u4ef6\u4e2d\u3002rndc\u7684\u914d\u7f6e\u6587\u4ef6\u4e3a\/etc\/rndc.conf\uff0c\u5728CentOS\u6216\u8005RHEL\u4e2d\uff0crndc\u7684\u5bc6\u94a5\u4fdd\u5b58\u5728\/etc\/rndc.key\u6587\u4ef6\u4e2d\u3002rndc\u9ed8\u8ba4\u76d1\u542c\u5728953\u53f7\u7aef\u53e3\uff08TCP\uff09\uff0c\u5176\u5b9e\u5728bind9\u4e2drndc\u9ed8\u8ba4\u5c31\u662f\u53ef\u4ee5\u4f7f\u7528\uff0c\u4e0d\u9700\u8981\u914d\u7f6e\u5bc6\u94a5\u6587\u4ef6\u3002 rndc\u4e0eDNS\u670d\u52a1\u5668\u5b9e\u884c\u8fde\u63a5\u65f6\uff0c\u9700\u8981\u901a\u8fc7\u6570\u5b57\u8bc1\u4e66\u8fdb\u884c\u8ba4\u8bc1\uff0c\u800c\u4e0d\u662f\u4f20\u7edf\u7684\u7528\u6237\u540d\/\u5bc6\u7801\u65b9\u5f0f\u3002\u5728\u5f53\u524d\u7248\u672c\u4e0b\uff0crndc\u548cnamed\u90fd\u53ea\u652f\u6301HMAC-MD5\u8ba4\u8bc1\u7b97\u6cd5\uff0c\u5728\u901a\u4fe1\u4e24\u7aef\u4f7f\u7528\u9884\u5171\u4eab\u5bc6\u94a5\u3002\u5728\u5f53\u524d\u7248\u672c\u7684rndc \u548c named\u4e2d\uff0c\u552f\u4e00\u652f\u6301\u7684\u8ba4\u8bc1\u7b97\u6cd5\u662fHMAC-MD5\uff0c\u5728\u8fde\u63a5\u7684\u4e24\u7aef\u4f7f\u7528\u5171\u4eab\u5bc6\u94a5\u3002\u5b83\u4e3a\u547d\u4ee4\u8bf7\u6c42\u548c\u540d\u5b57\u670d\u52a1\u5668\u7684\u54cd\u5e94\u63d0\u4f9b TSIG\u7c7b\u578b\u7684\u8ba4\u8bc1\u3002\u6240\u6709\u7ecf\u7531\u901a\u9053\u53d1\u9001\u7684\u547d\u4ee4\u90fd\u5fc5\u987b\u88ab\u4e00\u4e2a\u670d\u52a1\u5668\u6240\u77e5\u9053\u7684 key_id \u7b7e\u540d\u3002\u4e3a\u4e86\u751f\u6210\u53cc\u65b9\u90fd\u8ba4\u53ef\u7684\u5bc6\u94a5\uff0c\u53ef\u4ee5\u4f7f\u7528rndc-confgen\u547d\u4ee4\u4ea7\u751f\u5bc6\u94a5\u548c\u76f8\u5e94\u7684\u914d\u7f6e\uff0c\u518d\u628a\u8fd9\u4e9b\u914d\u7f6e\u5206\u522b\u653e\u5165named.conf\u548crndc\u7684\u914d\u7f6e\u6587\u4ef6rndc.conf\u4e2d\u3002 \u4e00 \u3001\u8bed\u6cd5 Usage: rndc [-b address] [-c config] [-s server] [-p port] [-k key-file ] [-y key] [-r] [-V] command command is one of the following: addzone zone [class [view]] { zone-options } Add zone to given view. Requires allow-new-zones option. delzone [-clean] zone [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[],"class_list":["post-18635","post","type-post","status-publish","format-standard","hentry","category-os"],"_links":{"self":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/18635","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/comments?post=18635"}],"version-history":[{"count":1,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/18635\/revisions"}],"predecessor-version":[{"id":18636,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/posts\/18635\/revisions\/18636"}],"wp:attachment":[{"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/media?parent=18635"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/categories?post=18635"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fwq.ai\/blog\/wp-json\/wp\/v2\/tags?post=18635"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}