{"id":250,"date":"2025-10-27T09:20:47","date_gmt":"2025-10-27T01:20:47","guid":{"rendered":"https:\/\/blog.rpyf.top\/?p=250"},"modified":"2025-10-27T15:19:14","modified_gmt":"2025-10-27T07:19:14","slug":"unblockneteasemusic%e4%b8%8eop%e4%b8%8d%e5%85%bc%e5%ae%b9%e7%9a%84%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88","status":"publish","type":"post","link":"https:\/\/blog.rpyf.top\/?p=250","title":{"rendered":"unblockneteasemusic\u4e0eOP\u4e0d\u517c\u5bb9\u7684\u89e3\u51b3\u65b9\u6848"},"content":{"rendered":"<p>\u5148\u653e\u4ee3\u7801<\/p>\n<p>\u5148\u628a\u73b0\u5728\u7684nft\u8868\u5907\u4efd\u5230root\u76ee\u5f55\u4e0b<br>\nnft list ruleset &gt; \/root\/nft_backup_$(date +%s).txt<\/p>\n<p>#\u67e5\u627e\u5230\u4f60\u7684op\u8f6f\u4ef6handle\u6570\uff0c\u7c7b\u4f3c\u4e8e\u5e8f\u53f7<br>\nnft &#8211;handle list chain inet fw4 dstnat<\/p>\n<p>\u4f8b\u5982\u6211\u7684\u662f1336<br>\n# IPv4<br>\nnft insert rule inet fw4 dstnat handle 1336 ip daddr @neteasemusic counter jump netease_cloud_music_redir<\/p>\n<p># IPv6<br>\nnft insert rule inet fw4 dstnat handle 1336 ip6 daddr @neteasemusic6 counter jump netease_cloud_music_redir<\/p>\n<p># \u5efa\u94fe\uff08\u5982\u679c\u5df2\u7ecf\u6709\u5219\u4f1a\u62a5\u9519\uff0c\u53ef\u5ffd\u7565\uff09<br>\nnft add chain inet fw4 netease_cloud_music_redir { type nat hook prerouting priority dstnat + 5\\; }<\/p>\n<p># \u91cd\u5b9a\u5411\u5230 Unblockneteasemusic \u7684\u7aef\u53e3 \u9ed8\u8ba4\u662f5200\u548c5201<br>\nnft add rule inet fw4 netease_cloud_music_redir tcp dport 80 redirect to :5200<br>\nnft add rule inet fw4 netease_cloud_music_redir tcp dport 443 redirect to :5201<\/p>\n<p>\u524d\u7f6e\u6761\u4ef6:op\u9009redirectHost\u6a21\u5f0f\uff0cumn\u5f00\u542fntfset\u52ab\u6301\uff0c\u7f51\u6613\u4e91\u97f3\u4e50Windows\u7248\u672c3.0\u4ee5\u4e0b\uff08\u4e0d\u5305\u542b3.0\uff09\uff0candroid APP8.0\u4ee5\u4e0b\uff08\u4e0d\u5305\u542b8.0\uff0c\u6bd4\u59827.2\uff0c6.x\u5b9e\u6d4b\u53ef\u4ee5\uff09uwp 1.4.1.0\u53ca\u4ee5\u4e0b\uff0c\u9700\u8981\u89e3\u9664\u4ee3\u7406\u73af\u8def<\/p>\n<p>\u539f\u56e0\u662fop\u5728\u91cd\u542f\u7684\u65f6\u5019\u4f1a\u6e05\u9664\u6389nftables\u91ccunm\u7684\u8def\u7531\u94fe<\/p>\n<p>\u53ef\u4ee5\u901a\u8fc7nft monitor trace\u6216\u8005\u5728 nft &#8211;handle list chain inet fw4 dstnat \u4e2d\u67e5\u770b ip daddr @neteasemusic counter packets X bytes Y \u7684 packets<\/p>\n<p>\n    \u5f00\u673a\u81ea\u52a8\u914d\u7f6e\uff1a\nOP-&gt;\u63d2\u4ef6\u8bbe\u7f6e-&gt;\u5f00\u53d1\u8005\u9009\u9879\n\u6dfb\u52a0\u8fd9\u4e2a\u811a\u672c\uff0c\u8fd9\u4e2a\u811a\u672c\u4f1a\u5728\u7a0b\u5e8f\u542f\u52a8\u540e\u6267\u884c\n\n    #!\/bin\/sh\n. \/usr\/share\/openclash\/log.sh\n. \/lib\/functions.sh\n\nLOG_OUT &#8220;Start Add Custom Firewall Rules for UnblockNeteaseMusic&#8230;&#8221;\n\nnft add chain inet fw4 netease_cloud_music_redir &#8216; { type nat hook prerouting priority dstnat + 5; }&#8217; 2&gt;\/dev\/null || true\nnft add chain inet fw4 netease_cloud_music &#8216; { type filter hook prerouting priority -150; }&#8217; 2&gt;\/dev\/null || true\n\n#  \u6dfb\u52a0\u91cd\u5b9a\u5411\u89c4\u5219\uff08HTTP\u21925200\uff0cHTTPS\u21925201\uff09\nnft add rule inet fw4 netease_cloud_music_redir tcp dport 80 redirect to :5200 2&gt;\/dev\/null || true\nnft add rule inet fw4 netease_cloud_music_redir tcp dport 443 redirect to :5201 2&gt;\/dev\/null || true\n\n# \u5c06 IP \u96c6\u5408\u8df3\u8f6c\u5230 redir \u94fe\uff08\u5982\u679c\u5df2\u5b58\u5728\u5219\u5ffd\u7565\uff09\nnft add rule inet fw4 netease_cloud_music ip daddr @neteasemusic counter jump netease_cloud_music_redir 2&gt;\/dev\/null || true\n\n# \u81ea\u52a8\u68c0\u6d4b OP handle\uff0c\u5e76\u63d2\u5165\u5728\u5176\u524d\u9762\nh=$(nft &#8211;handle list chain inet fw4 dstnat | grep &#8220;jump openclash&#8221; | awk -F&#8217;# handle &#8216; &#8216;{print $2}&#8217; | tr -d &#8216; \\r\\n&#8217;)\nif [ -n &#8220;$h&#8221; ]; then\n  nft insert rule inet fw4 dstnat handle &#8220;$h&#8221; ip daddr @neteasemusic counter jump netease_cloud_music_redir 2&gt;\/dev\/null || true\n  nft insert rule inet fw4 dstnat handle &#8220;$h&#8221; ip6 daddr @neteasemusic6 counter jump netease_cloud_music_redir 2&gt;\/dev\/null || true\nfi\n\nexit 0\n\n<\/p>","protected":false},"excerpt":{"rendered":"<p>\u5148\u653e\u4ee3\u7801 \u524d\u7f6e\u6761\u4ef6:op\u9009redirectHost\u6a21\u5f0f\uff0cumn\u5f00\u542fntfset\u52ab\u6301\uff0c\u7f51\u6613\u4e91\u97f3\u4e50Windows\u7248 &#8230;.&nbsp;&nbsp;<a class=\" special\" href=\"https:\/\/blog.rpyf.top\/?p=250\">Read More<\/a><\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,6],"tags":[],"class_list":["post-250","post","type-post","status-publish","format-standard","hentry","category-5","category-6"],"_links":{"self":[{"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=\/wp\/v2\/posts\/250","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=250"}],"version-history":[{"count":7,"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=\/wp\/v2\/posts\/250\/revisions"}],"predecessor-version":[{"id":261,"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=\/wp\/v2\/posts\/250\/revisions\/261"}],"wp:attachment":[{"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=250"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=250"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.rpyf.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=250"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}