{"id":788,"date":"2012-08-05T11:46:00","date_gmt":"2012-08-05T03:46:00","guid":{"rendered":"http:\/\/note.systw.net\/note\/?p=788"},"modified":"2023-11-05T11:53:35","modified_gmt":"2023-11-05T03:53:35","slug":"rfc1771-bgp","status":"publish","type":"post","link":"https:\/\/systw.net\/note\/archives\/788","title":{"rendered":"RFC1771 BGP"},"content":{"rendered":"\n<p><strong>BGP(border gateway protocol,\u908a\u754c\u9598\u9053\u5354\u5b9a)<\/strong><br>\u5728internet\u901a\u544a,\u5b78\u7fd2,\u9078\u64c7\u8def\u5f91\u5354\u5b9a<br>\u6240\u6709ISP\u5927\u90fd\u900f\u904eBGP\u4ea4\u63dbinternet\u8def\u7531\u8868<br>EGP(exterior gateway protocol,\u5916\u90e8\u9598\u9053\u5354\u5b9a)\u4e2d\u7528\u9014\u8f03\u5ee3\u7684\u8def\u7531\u5354\u5b9a<br>BGP\u64c1\u6709\u6700\u4f73\u6700\u7a69\u5b9a\u7684\u8def\u5f91\u6f14\u7b97\u6cd5<br>rfc1771\u70baBGP4<\/p>\n\n\n\n<p><strong>\u4f7f\u7528BGP\u7684\u7406\u7531<\/strong><br>\u5728\u5169\u500b\u4ee5\u4e0a\u9023\u5916\u7dda\u8def\u4e0b,\u9078\u51fa\u5230\u5916\u7db2\u7684\u6700\u4f73\u8def\u5f91:<br>\u82e5\u7d44\u7e54\u7db2\u8def\u67092\u500b\u4ee5\u4e0a\u908a\u754c\u4ecb\u9762\u53ef\u96e2\u958b\u5230\u9054internet\u7684\u67d0\u500b\u9ede\u6642,\u53ef\u900f\u904eBGP\u6c7a\u5b9a\u7531\u90a3\u500b\u908a\u754c\u4ecb\u9762\u96e2\u958b\u6703\u8f03\u5feb<\/p>\n\n\n\n<p>ps:\u9023\u63a5isp\u7684\u65b9\u5f0f\u5e38\u898b\u7684\u6709\u4ee5\u4e0b\u5e7e\u7a2e<br>Single Homed:\u9023\u63a51\u5bb6isp,\u6bcf\u5bb6isp\u4f7f\u75281\u689d\u93c8\u8def<br>Dual Homed:\u9023\u63a51\u5bb6isp,\u6bcf\u5bb6isp\u4f7f\u75282\u689d\u4ee5\u4e0a\u93c8\u8def<br>Single Multihomed:\u9023\u63a52\u5bb6\u4ee5\u4e0aisp,\u6bcf\u5bb6isp\u4f7f\u75281\u689d\u4ee5\u4e0a\u93c8\u8def<br>Dual Multihomed:\u9023\u63a52\u5bb6\u4ee5\u4e0aisp,\u6bcf\u5bb6isp\u4f7f\u75282\u689d\u4ee5\u4e0a\u93c8\u8def&nbsp;<\/p>\n\n\n\n<p><strong>\u898f\u683c<\/strong><br>\u4f7f\u7528\u898f\u5247\u65b9\u5f0f\u9078\u8def\u5f91,\u4e0d\u540c\u65bcIGP\u4f7f\u7528\u6b0a\u503c\u9078\u8def\u5f91<br>\u63a1Path vector(\u8def\u5f91\u5411\u91cf),\u985e\u4f3c\u8ddd\u96e2\u5411\u91cf\u7684\u908f\u8f2f<br>\u4f7f\u7528TCP 179\u8207\u9130\u5c45\u901a\u8a0a<br>iBGP\u7ba1\u7406\u8ddd\u96e2\u70ba200,eBGP\u7ba1\u7406\u8ddd\u96e2\u70ba20<\/p>\n\n\n\n<p><strong>\u8207IGP\u5dee\u7570<\/strong><br>\u9700\u660e\u78ba\u6307\u5b9a\u9130\u5c45IP\u4f4d\u7f6e,\u9130\u5c45\u53ef\u4ee5\u4e0d\u7528\u5728\u76f8\u540c\u5b50\u7db2\u8def\u4e0a<br>\u9130\u5c45\u4e4b\u9593\u4f7f\u7528TCP 179,\u4e0d\u540c\u65bcIGP\u4f7f\u7528IP\u5354\u5b9a<br>\u901a\u544aPA(path attributes,\u8def\u5f91\u5c6c\u6027),\u4e0d\u540c\u65bcIGP\u901a\u544a\u6b0a\u503c<br>\u5f37\u8abf\u7a69\u5b9a\u6027,\u4e0d\u540c\u65bcIGP\u5f37\u8abf\u5feb\u901f\u6536\u6582<br>ps:<br>BGP route table\u901a\u5e38\u90fd\u6bd4IGP table\u5927\u7684\u591a\uff0c\u751a\u81f3\u53ef\u80fd\u6709\u8d85\u904e100,000\u7b46route<\/p>\n\n\n\n<p>ps:<br>MPBGP(Multiprotocol BGP),RFC2858<br>\u652f\u63f4IPv6,IPX\u7b49\u591a\u7a2e\u7db2\u8def\u5c64\u5354\u5b9a\u7684\u8def\u7531\u8a0a\u606f<br>ps:<br>\u4e00\u822cBGPv4\u53ea\u652f\u63f4IPv4<\/p>\n\n\n\n<p>&#8230;&nbsp;<\/p>\n\n\n\n<p><br><strong>peer<\/strong><br>BGP\u7684\u9130\u5c45,\u53ef\u5206\u70ba<br>iBGP:\u5728\u540c\u4e00\u500bASN,\u4e0d\u6703\u5c07\u81ea\u5df1\u7684ASN\u8a18\u9304\u5728AS_PATH<br>eBGP:\u5728\u4e0d\u540cASN,\u6703\u5c07\u81ea\u5df1\u7684ASN\u8a18\u9304\u5728AS_PATH<\/p>\n\n\n\n<p><strong>ASN(\u81ea\u6cbb\u7cfb\u7d71\u7de8\u865f)<\/strong><br>\u7531IANA\u8ca0\u8cac\u63a7\u5236,\u4e26\u5206\u914d\u5230\u4e0d\u540c\u7d44\u7e54<\/p>\n\n\n\n<p><strong>ASN\u7bc4\u570d<\/strong><br>0 \u4fdd\u7559<br>1-64495 IANA\u6307\u6d3e\u7684public ASN<br>64496-64511 \u4fdd\u7559\u4f5c\u70ba\u6587\u4ef6\u7528\u9014 (RFC5398)<br>64512-65534 \u6307\u6d3e\u7d66private ASN<br>65535 \u4fdd\u7559<\/p>\n\n\n\n<p>&#8230;&nbsp;<\/p>\n\n\n\n<p><strong>BGP\u8def\u5f91\u66f4\u65b0\u6709\u4e09\u7a2e\u53ef\u9078<\/strong><br>1\u53ea\u66f4\u65b0\u9810\u8a2d\u8def\u5f91,ISP\u5229\u7528BGP\u901a\u544a\u9810\u8a2d\u8def\u5f91\u3000<br>2\u5b8c\u6574\u66f4\u65b0,\u6703\u7528\u5230\u5927\u91cf\u8a18\u61b6\u9ad4\u53caCPU\u8cc7\u6e90<br>3\u90e8\u4efd\u66f4\u65b0,\u53ea\u66f4\u65b0\u6307\u5b9a\u7684\u8def\u5f91<\/p>\n\n\n\n<p><strong>\u9078\u51faBGP RID\u9806\u5e8f<\/strong><br>1\u76f4\u63a5\u6307\u5b9a<br>2\u6700\u5927\u8ff4\u8def\u4ecb\u9762<br>3\u6700\u5927\u975e\u56de\u8def\u4ecb\u9762<\/p>\n\n\n\n<p>&#8230;&nbsp;<\/p>\n\n\n\n<p><strong>\u9130\u5c45\u9593\u5bb9\u932f\u554f\u984c<\/strong><br>bgp\u9130\u5c45\u95dc\u4fc2\u9700\u5728\u95dc\u806f\u7684\u4ecb\u9762\u90fd\u8655\u65bcup\u72c0\u614b\u6642\u624d\u53ef\u7dad\u6301<br>\u82e5\u767c\u751f\u554f\u984c,\u6709\u4ee5\u4e0b\u89e3\u6c7a\u65b9\u6848<br>1.\u5728\u6bcf\u500brouter\u4e0a\u4f7f\u7528\u5169\u500bneighbor\u6307\u4ee4,\u5373\u4f7f\u5176\u4e2d\u4e00\u500b\u93c8\u8def\u5931\u6548,\u9084\u6709\u53e6\u4e00\u500b,\u4f46\u8a72\u65b9\u6848\u6703\u6d88\u8017\u5f88\u591a\u904b\u7b97\u8cc7\u6e90<br>2,\u5728\u8ff4\u8def\u4ecb\u9762\u4e0a\u4f7f\u7528neighbor\u6307\u4ee4,\u5373\u4f7f\u93c8\u8def\u5931\u6557,\u8ff4\u8def\u4ecb\u9762\u4ecd\u4e0d\u53d7\u5f71\u97ff,\u800c\u8a72\u65b9\u6848\u8f03\u7121\u6548\u80fd\u8ca0\u64d4\u554f\u984c<br>ps:\u70ba\u4e86\u8b93\u5176\u4ed6router\u53ef\u5230\u9054\u8ff4\u8def\u4ecb\u9762\u4e0a\u7684\u4f4d\u7f6e,\u53ef\u900f\u904eIGP\u5b78\u7fd2\u6216\u8a2d\u5b9a\u975c\u614b\u8def\u7531<\/p>\n\n\n\n<p><br><strong>BGP\u9130\u5c45\u5efa\u7acb\u6b65\u9a5f<\/strong><br>1.router\u6839\u64da\u6307\u5b9a\u9130\u5c45\u4ee5tcp 179\u9032\u884c\u4e09\u5411\u4ea4\u63e1,\u4ee5\u5efa\u7acbtcp\u9023\u7dda<br>2.\u50b3\u9001bgp open\u8a0a\u606f,\u985e\u4f3cIGP\u7684HELLO\u8a0a\u606f<br>3.\u6bd4\u5c0d\u9130\u5c45open\u8a0a\u606f\u5167\u7684\u53c3\u6578<br>ps:<br>IBGP\u9130\u5c45\u4e0d\u4e00\u5b9a\u8981\u76f4\u63a5\u76f8\u9023<\/p>\n\n\n\n<p><strong>BGP\u9130\u5c45\u72c0\u614b<\/strong><br>idle:BGP\u7a0b\u5e8f\u88ab\u95dc\u9589\u6216\u7b49\u5f85\u4e0b\u4e00\u6b21\u91cd\u8a66<br>connect:\u7b49\u5f85\u8207\u5c0d\u65b9\u7684tcp\u9023\u7dda\u5b8c\u6210<br>active:tcp\u9023\u7dda\u5b8c\u6210<br>opensent:bgp open\u8a0a\u606f\u5df2\u50b3\u9001\u5230\u9130\u5c45<br>openconfirm:\u5df2\u63a5\u6536\u5230\u9130\u5c45bgp open\u56de\u8986,\u4e26\u7b49\u5f85keepalive\u8a0a\u606f(\u53c3\u6578\u4e00\u81f4)\u6216notification\u8a0a\u606f(\u53c3\u6578\u4e0d\u4e00\u81f4)<br>established:\u6bd4\u5c0d\u9130\u5c45\u53c3\u6578\u4e00\u81f4,\u9130\u5c45\u95dc\u4fc2\u5efa\u7acb\u5b8c\u6210,\u53ef\u958b\u59cb\u50b3\u9001update\u8a0a\u606f<\/p>\n\n\n\n<p><strong>BGP\u8a0a\u606f\u985e\u578b<\/strong><br>HELLO\uff1a1\u7528\u4f86\u5efa\u7acb\u9130\u5c45\u95dc\u4fc2\uff0c2\u4ea4\u63db\u57fa\u672c\u53c3\u6578<br>keepalive:\u7528\u4f86\u7dad\u8b77\u9130\u5c45\u95dc\u4fc2,\u5728hold timer\u5167\u672a\u6536\u5230\u8a72\u8a0a\u606f\u5247\u4e2d\u65b7\u9130\u5c45\u95dc\u4fc2<br>notification:\u7528\u4f86\u901a\u77e5bgp\u932f\u8aa4\u8a0a\u606f<br>update\uff1a\u7528\u4f86\u4ea4\u63dbPA\u53caNLRI(network layaer reachability information,\u7db2\u8def\u5c64\u53ef\u9054\u6027)\/pa\u5c6c\u6027\u7684prefix&nbsp;<br>ps:<br>update\u8a0a\u606f\u6703\u5217\u51fa\u4e00\u7d44pa\u53ca\u4f7f\u7528\u8a72\u7d44pa\u7684prefix\/NLRI &nbsp;<br>\u7528\u9014:1\u9032\u884c\u901a\u544a,2withdraw route(\u64a4\u9664\u8def\u5f91)<\/p>\n\n\n\n<p>&#8230;&nbsp;<\/p>\n\n\n\n<p><strong>\u901a\u544a\u8def\u5f91\u898f\u5247<\/strong><br>1\u4efb\u4f55bgp update\u53ea\u901a\u544a\u6700\u4f73\u8def\u5f91<br>2\u4e0d\u6703\u5c07\u5b78\u5230\u7684ibgp\u8def\u5f91\u901a\u544a\u7d66ibgp peer(\u985e\u4f3csplit horizon\u6982\u5ff5)<br>\u3000\u63db\u53e5\u8a71\u8aaa\u5c31\u662fiBGP\u901a\u544aroute\u5230iBGP peer\u4e0d\u6703\u4fee\u6539route\u7684next hop(\u4e00\u822cIGP\u6703)&nbsp;<\/p>\n\n\n\n<p><strong>bgp next hop\u554f\u984c<br><\/strong>\u8def\u5f91\u901a\u544a\u5230eBGP peer\u6642\u6703\u4fee\u6539route\u7684next hop(ebgp\u7684\u9130\u5c45\u4f4d\u7f6e),\u4f46\u901a\u544a\u5230iBGP peer\u4e0d\u6703\u4fee\u6539route\u7684next hop&nbsp;<br>\u6240\u4ee5bgp\u7684next hop\u6709\u6642\u6703\u5728\u4e0d\u540c\u7db2\u8def\u4e2d\uff0c\u4e5f\u56e0\u6b64\u53ef\u80fd\u6703\u6709\u5230\u4e0d\u4e86next hop\u7684\u554f\u984c<br>\u70ba\u5230\u9054next hop,\u4e3b\u8981\u6709\u5169\u7a2e\u505a\u6cd5<br>1\u5efa\u597dip\u8def\u5f91,\u4f7f\u8a72\u8a2d\u5099\u53ef\u4ee5\u5230next hop<br>2\u900f\u904e\u8a2d\u5099\u7684\u6307\u4ee4&nbsp;ex:cisco\u7684next-hop-self<\/p>\n\n\n\n<p><strong>BGP\u8ff4\u5708\u554f\u984c<br><\/strong>\u82e5\u9023\u63a5internet\u76842\u53f0bgp router\u6c92\u6709\u4e92\u76f8\u9023\u63a5\u6642\u5c31\u6703\u7522\u751floop&nbsp;<br>\u4e3b\u8981\u6709\u4ee5\u4e0b3\u7a2e\u89e3\u6cd5<br>1.iBGP fully mesh:\u5728\u7d44\u7e54\u9023\u63a5bgp router\u7684\u5167\u90e8\u8a2d\u5099\u4e0a\u57f7\u884ciBGP,\u4e26\u5c07\u9019\u4e9b\u8a2d\u5099\u9023\u63a5\u5728\u4e00\u8d77&nbsp;<br>\u3000\u4e3b\u8981\u539f\u7406:\u8b93iBGP A\u901a\u544aroute\u5230iBGP peer\u6642\u4fee\u6539route\u7684next hop\u70baiBGP A(\u9810\u8a2d\u4e0d\u6703) \u3000\u3000<br>2.\u5c07BGP\u8def\u5f91redistribute\u5230IGP,\u4e0d\u5efa\u8b70<br>\u3000\u512a\u9ede:\u5167\u90e8\u6bcf\u500brouter\u5230internet\u53ef\u4ee5\u6709\u6700\u4f73\u8def\u5f91<br>\u3000\u7f3a\u9ede:\u6703\u51fa\u73fe\u5927\u91cf\u8def\u5f91,\u6240\u4ee5\u6703\u4f7f\u7528\u6975\u5927\u7684\u904b\u7b97\u8cc7\u6e90<br>3.BGP synchronization:\u7576iBGP\u5b78\u5230\u7684route\u548cIGP\u5b78\u5230\u7684route\u4e00\u81f4\u6642\uff0c\u624d\u8981\u4f7f\u7528\u8a72route&nbsp;<br>\u3000\u4f46\u82e5IGP\u6c92\u5b78\u5230(\u672aredistribute\u5230IGP),\u5247\u8a72route\u6c38\u9060\u90fd\u4e0d\u6703\u88ab\u4f7f\u7528&nbsp;<br>ps:<br>\u5176\u4ed6\u65b9\u6cd5\u9084\u6709bgp confederation(\u540c\u76df)\u548cbgp route reflectors(\u8def\u5f91\u53cd\u5c04)<\/p>\n\n\n\n<p>&#8230;<\/p>\n\n\n\n<p><strong>PA\u8def\u5f91\u5c6c\u6027<br><\/strong>\u6709\u4ee5\u4e0b\u5e7e\u7a2e<br>next_hop:\u6307\u51fa\u5230\u9054\u76ee\u5730\u7684\u4e0b\u4e00\u7ad9ip\u4f4d\u5740<br>as_path:<br>\u3000\u6839\u64da\u6700\u77ed\u7684AS_PATH\u9078\u51fa\u6700\u4f73\u8def\u5f91<br>\u3000\u6703\u8a18\u9304\u7d93\u904e\u7684ASN<br>\u3000\u53ef\u9632\u8ff4\u5708,\u56e0\u70ba\u53ef\u770b\u7d93\u904e\u90a3\u4e9bAS\u5f97\u77e5\u662f\u5426\u767c\u751f\u91cd\u8986<br>local_pref:<br>\u3000\u6578\u503c\u4ecb\u65bc0~4294967295(2^32-1)\u4e4b\u9593,\u9810\u8a2d\u70ba100<br>\u3000\u7528\u4f86\u8abf\u6574\u901a\u544a\u8a72\u8def\u5f91\u7684\u6b0a\u91cd<br>\u3000propagated within as(\u53ea\u4f5c\u7528\u5728\u76f8\u540cas)<br>origin:\u503c\u6709I(\u5f9eIGP\u5b78\u7684),E(\u5f9eBGP\u5b78\u7684),&#8221;?&#8221;(\u672a\u77e5)<br>weight:<br>\u3000\u6578\u503c\u4ecb\u65bc0~65535(2^16-1)\u4e4b\u9593,<br>\u3000\u9810\u8a2d\u5b78\u5230\u7684\u8def\u5f91\u70ba0,router\u672c\u8eab\u5b58\u5165\u7684\u8def\u5f91\u70ba32768,<br>\u3000cisco\u5c08\u5c6c\u529f\u80fd,\u56e0\u6b64\u4e0d\u6703\u5728bgp update\u4e2d<br>MED(multi exit discriminator);<br>\u3000\u6578\u503c\u4ecb\u65bc0~4294967295(2^32-1)\u4e4b\u9593,\u9810\u8a2d\u503c\u70ba0<br>\u3000\u8b93\u7d44\u7e54AS\u544a\u8a34\u76f8\u9130AS\uff0c\u4f7f\u7528\u90a3\u4e00\u689d\u6700\u4f73route\u9023\u9032\u7d44\u7e54AS\u5167&nbsp;<br>\u3000propagated between as(\u53ea\u6703\u4f5c\u7528\u5728\u6307\u5b9a\u7684\u76f8\u9130AS)<\/p>\n\n\n\n<p><br><strong>BGP\u8def\u5f91\u7684\u6c7a\u5b9a\u9806\u5e8f<\/strong><br>0.next hop\u53ef\u5426\u5230\u9054,\u82e5\u7121\u6cd5\u5230\u9054\u5247\u4e0d\u4f7f\u7528\u8a72\u8def\u5f91<br>1.weight:\u8d8a\u5927\u8d8a\u512a\u5148<br>2.local_pref:\u8d8a\u5927\u8d8a\u512a\u5148<br>3.originate route(\u5f9erouter\u672c\u8eab\u5b58\u5165bgp\u7684route):\u672c\u8eab\u5b58\u5165\u7684\u8def\u5f91\u5927\u65bc\u5b78\u5230\u7684BGP\u8def\u5f91<br>4.as path:\u8d8a\u5c0f\u8d8a\u512a\u5148<br>5.origin:\u512a\u5148\u9806\u5e8f\u70baI(IGP)&gt;E(EGP)&gt;?(incomplete\/undetermined)<br>6.MED:\u8d8a\u5c0f\u8d8a\u512a\u5148<br>7.neighbor type:\u512a\u5148\u9806\u5e8f\u70baeBGP&gt;iBGP<br>8.IGP next_hop weight:\u8d8a\u5c0f\u8d8a\u512a\u5148<br>9\u5b78\u5230\u6700\u4e45\u7684eBGP\u8def\u5f91<br>10\u6700\u5c0f\u7684\u9130\u5c45BGP RID<br>11\u6700\u5c0f\u7684\u9130\u5c45IP<br>ps:<br>BGP\u53ea\u5141\u8a31\u4e00\u689d\u6700\u4f73\u8def\u5f91,\u4e0d\u540c\u65bcIGP\u53ef\u64c1\u6709\u591a\u689d<br>\u4f46\u82e5\u5728\u6b65\u9a5f8\u4ecd\u672a\u9078\u51fa\u6700\u4f73\u8def\u5f91,\u53ef\u5141\u8a31\u5c07\u8def\u5f91\u4e00\u8d77\u653e\u5165route table,\u653e\u5165\u7684\u6578\u91cf\u53d6\u6c7a\u65bc\u8a72\u8a2d\u5099\u9650\u5236<br>ex:cisco\u7684maximum-paths\u6307\u4ee4<\/p>\n\n\n\n<p><br><strong>\u5e38\u7528\u4f86\u6c7a\u5b9aBGP\u6700\u4f73\u8def\u5f91\u76844\u500bPA<\/strong><br>\u53ef\u4ee5\u7528\u9014\u5206\u70ba2\u985e<br>\u63a7\u5236\u7d44\u7e54\u7684\u9023\u51fa\u8def\u5f91(\u7576\u6709\u591a\u500b\u51fa\u53e3\u6642)<br>\u30001.weight<br>\u30002.local_pref<br>\u30004.as_path<br>\u63a7\u5236\u7d44\u7d44\u7e54\u7684\u9023\u5165\u8def\u5f91<br>\u30006.MED<\/p>\n\n\n\n<p>ps:<br>\u5176\u4ed6\u8f03\u5e38\u7528\u4f86\u6c7a\u5b9aBGP\u6700\u4f73\u8def\u5f91\u7684\u9805\u76ee<br>3.\u5f9erouter\u672c\u8eab\u5b58\u5165bgp\u7684route:<br>5.origin:<br>7.neighbor type:BGP\u9810\u8a2d\u4f7f\u7528neighbor type\u6c7a\u5b9a\u6700\u4f73\u8def\u5f91<br>8.IGP next_hop weight:<\/p>\n","protected":false},"excerpt":{"rendered":"<p>BGP(border gateway protocol,\u908a\u754c &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[25],"tags":[],"class_list":["post-788","post","type-post","status-publish","format-standard","hentry","category-osi-layer3"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts\/788","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/comments?post=788"}],"version-history":[{"count":0,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/posts\/788\/revisions"}],"wp:attachment":[{"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/media?parent=788"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/categories?post=788"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/systw.net\/note\/wp-json\/wp\/v2\/tags?post=788"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}