android本身内置了一些网络命令,使用这些命令程序尤其基于ndk开发时会获得很多便利,并在某种程度上可以绕开上层的限制、获得更多详细的信息和更好的灵活性等。


1.操作路由表

获取:ip route 或者 busybox route

新增:ip route add 10.0.0.172/8 dev wlan0

删除:ip route del 10.0.0.172

删除一条默认路由:ip route del default

添加默认路由:route add default gw 10.0.0.172

2.测试网络

ping 10.0.0.172

测试DNS:busybox nslookup blog.csdn.net

测试DNS:dsdnsutil -s 114.114.114.114 -q blog.csdn.net

测试路由路径:busybox traceroute 10.0.0.172

3.查看接口

netcfg

netcfg rmnet0

busybox ifconfig (和route类似,android自带的ifconfig默认不会打印出接口信息)

4.操作接口

netcfg wlan0 up/down

netcfg wlan0 dhcp up

ifconfig rmnet0 10.0.0.172 up

ifconfig rmnet0 10.0.0.172 netmask 255.0.0.0 up

5.系统属性

打印全部属性:getprop

设置DNS:setprop net.dns1 128.224.160.11   // 此外 net.dns2 类似,不过在我的机子上好像无效,最终采用的dns是dhcp.wlan0.dns1指定的值

6.无线wifi

打印无线拓展:iwconfig

使用netcfg打印接口,在wifi没有打开的情况下是没有wlan0接口的,因为wifi内核模块并未加载,

加载wifi驱动模块:insmod /system/lib/modules/wlan.ko  (这时候wlan0就出来了,补充:后续可以参考这篇文章Android下同时使用WIFI与3G网络。)

卸载wifi驱动模块: rmmod /system/lib/modules/wlan.ko  (注意手动加载后没有卸载的话用户界面是开不了wifi的)

扫描wifi热点:iwlist wlan0 scanning

7.ndc命令(需要ROOT权限)

interface list
readrxcounter| readtxcounter
getthrottle <”rx|tx”>
setthrottle
driver
route <”default|secondary”>
list_ttys  
ipfwd status
enable|disable
tether status
start-reverse|stop-reverse
stop<
start
interface
dnslist
dnsset < addr_2>
nat
pppd attach
detach
softap startap | stopap
fwreload
clients
status
set [ ]
resolver setdefaultif
setifdns
flushdefaultif   刷新DNS缓存
flushif
bandwith enable | disable
removequota | rq
getquota | gq
getiquota | giq
setquota | sq
removequota | rqs
removeiiquota | riq
setiquota | sq
addnaughtyapps | ana
removenaughtyapps | rna
setgolbalalert | sga
debugsettetherglobalalert | dstga
setsharedalert | ssa
removesharedalert | rsa
setinterfacealert | sia
removeinterfacealert | ria
gettetherstats | gts
idletimer enable|disable
add|remove
firewall enable|disable|is_enabled
set_interface_rule
set_egress_source_rule
set_egress_dest_rule
set_uid_rule
clatd stop | status| start

更多相关文章

  1. 【小米招聘]】Android系统软件测试工程师
  2. android studio 连接手机(真机测试)windows
  3. Android接口回调
  4. Android使用AIDL(接口描述语言)设计和使用远程接口
  5. 通过Android的okhttp接口访问网络接口
  6. android C编程技巧 及 C/C++开发测试

随机推荐

  1. 书评:使用Android(安卓)SDK构建应用,第2版
  2. Android DataBinding使用2-Recycleview
  3. android回收图片使用内存
  4. Android(安卓)Jetpack之Paging初探
  5. Android大神微博集
  6. android如何在非context環境訪問資源
  7. Android Stuido Ndk-Jni 开发(二):Jni中打印
  8. android internet参数传递
  9. OpenCV android sdk配置OpenCV android N
  10. Android异步处理:AsyncTask的实现原理