{"id":1082,"date":"2020-09-12T15:29:03","date_gmt":"2020-09-12T07:29:03","guid":{"rendered":"http:\/\/www.max-shu.com\/blog\/?p=1082"},"modified":"2020-09-12T15:29:03","modified_gmt":"2020-09-12T07:29:03","slug":"android9%e4%b8%8b%e7%94%a8ethernet-%e7%9a%84tether%e6%a8%a1%e5%bc%8f%e6%9d%a5%e5%81%9a%e8%b7%af%e7%94%b1%e5%99%a8%e5%8a%9f%e8%83%bd","status":"publish","type":"post","link":"http:\/\/www.max-shu.com\/blog\/?p=1082","title":{"rendered":"Android9\u4e0b\u7528ethernet \u7684Tether\u6a21\u5f0f\u6765\u505a\u8def\u7531\u5668\u529f\u80fd"},"content":{"rendered":"<div><strong>\u8bd5\u7528iptables\u5b9e\u73b0\uff1a<\/strong><\/div>\n<div># iptables -t nat -I POSTROUTING 1 -o wlan0 -j MASQUERADE\u00a0 <span style=\"color: #ff0000;\">\u5f00\u542fNAT<\/span><\/div>\n<div># iptables -t filter -A tetherctrl_FORWARD -i wlan0 -o eth0 -m state &#8211;state ESTABLISHED,RELATED -g tetherctrl_counters<\/div>\n<div># iptables -t filter -A tetherctrl_FORWARD -i eth0 -o wlan0 -m state &#8211;state INVALID -j DROP<\/div>\n<div># iptables -t filter -A tetherctrl_FORWARD -i eth0 -o wlan0 -g tetherctrl_counters<\/div>\n<div># iptables -t filter -D tetherctrl_FORWARD -j DROP<\/div>\n<div># iptables -t filter -A tetherctrl_FORWARD -j DROP<\/div>\n<div># iptables -t filter -D tetherctrl_counters -i eth0 -o wlan0 -j RETURN<\/div>\n<div># iptables -t filter -D tetherctrl_counters -i wlan0 -o eth0 -j RETURN<\/div>\n<div># iptables -t filter -A tetherctrl_counters -i eth0 -o wlan0 -j RETURN<\/div>\n<div># iptables -t filter -A tetherctrl_counters -i wlan0 -o eth0 -j RETURN<\/div>\n<div># ip rule add iif eth0 table wlan0 prio 18000<\/div>\n<div># ip route add table local_network 172.16.0.0\/24 dev eth0 proto static scope link\u00a0 \u00a0<span style=\"color: #ff0000;\">\u589e\u52a0\u8def\u7531\u5230local_network\u8def\u7531\u8868<\/span><\/div>\n<div># ip route flush cache<\/div>\n<div># sysctl -w net.ipv4.ip_forward=1\u00a0 \u00a0<span style=\"color: #ff0000;\">\u5f00\u542fforward\u6a21\u5f0f<\/span><\/div>\n<div><strong>\u53e6\u4e00\u79cd\u5b9e\u73b0\u65b9\u5f0f\uff08\u6a21\u62dfTether\u65b9\u5f0f\uff09\uff1a<\/strong><\/div>\n<div>\u5148\u4eceid\u4e3a101\u7684physical\u7c7b\u578b\u7f51\u7edc\u79fb\u9664\u8001\u7684eth0\uff0c\u7136\u540e\u628aeth0\u52a0\u5165local\u7c7b\u578b\u7f51\u7edc\uff0c\u8fd9\u91cc\u7684101\u548clocal\u90fd\u662fAndroid\u7684NetId\u6982\u5ff5\uff1a<\/div>\n<div># ndc netd network interface remove 101 eth0<\/div>\n<div># ndc netd network interface add local eth0<\/div>\n<div>\u6dfb\u52a0local_network\u8def\u7531\uff1a<\/div>\n<div># ndc netd network route add local eth0 172.16.0.0\/24<\/div>\n<div>\u5f00\u542fNAT\uff1a<\/div>\n<div># ndc netd ipfwd enable actiontec<\/div>\n<div># ndc netd nat enable eth0 wlan0 1 172.16.0.0\/24<\/div>\n<div>\u6dfb\u52a0\u89c4\u5219\uff1a<\/div>\n<div># ip rule add iif eth0 table wlan0 prio 18000<\/div>\n<div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u8bd5\u7528iptables\u5b9e\u73b0\uff1a # iptables -t nat -I POSTROUTING 1 -o wla &hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,13,186],"tags":[394,813,812,811,814],"class_list":["post-1082","post","type-post","status-publish","format-standard","hentry","category-linuxandroid","category-13","category-186","tag-android","tag-iptables","tag-ndc","tag-netd","tag-tether"],"views":6038,"_links":{"self":[{"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1082","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1082"}],"version-history":[{"count":1,"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1082\/revisions"}],"predecessor-version":[{"id":1083,"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1082\/revisions\/1083"}],"wp:attachment":[{"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1082"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1082"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.max-shu.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1082"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}