Мне нужно получить IPaddress, назначенный оператором после успешного вызова данных 3G или LTE.
$adb shell netcfg >> doesnt have the assigned IP address.
Я пробовал adb shell dumpsys
и адрес grep ip, но тщетно. Любая помощь/указатели?
Мне нужно получить IPaddress, назначенный оператором после успешного вызова данных 3G или LTE.
$adb shell netcfg >> doesnt have the assigned IP address.
Я пробовал adb shell dumpsys
и адрес grep ip, но тщетно. Любая помощь/указатели?
Попробуйте эту команду, это поможет вам получить ipaddress
$ adb shell ifconfig tiwlan0
tiwlan0 - это имя сетевого интерфейса wi-fi на устройстве. Это общая команда для получения ipaddress,
"adb shell netcfg"
Он будет выводиться следующим образом
usb0 DOWN 0.0.0.0 0.0.0.0 0×00001002
sit0 DOWN 0.0.0.0 0.0.0.0 0×00000080
ip6tnl0 DOWN 0.0.0.0 0.0.0.0 0×00000080
gannet0 DOWN 0.0.0.0 0.0.0.0 0×00001082
rmnet0 UP 112.79.87.220 255.0.0.0 0x000000c1
rmnet1 DOWN 0.0.0.0 0.0.0.0 0×00000080
rmnet2 DOWN 0.0.0.0 0.0.0.0 0×00000080
Согласно комментариям: netcfg был удален в Android 6
Пытаться
adb shell netcfg
Или же
adb shell <device here or leave out if one device>
[email protected]:/ $netcfg
Попробуйте:
adb shell ip addr show rmnet0
Он вернет что-то вроде этого:
3: rmnet0: <UP,LOWER_UP> mtu 1500 qdisc htb state UNKNOWN qlen 1000
link/[530]
inet 172.22.1.100/29 scope global rmnet0
inet6 fc01:abab:cdcd:efe0:8099:af3f:2af2:8bc/64 scope global dynamic
valid_lft forever preferred_lft forever
inet6 fe80::8099:af3f:2af2:8bc/64 scope link
valid_lft forever preferred_lft forever
Эта часть - ваш IPV4, назначенный оператором
inet 172.22.1.100
Эта часть - ваш IPV6, назначенный оператором
inet6 fc01: abab: cdcd: efe0: 8099: af3f: 2af2: 8bc
Вы можете получить IP-адрес устройства таким образом:
adb shell ip route > addrs.txt
#Case 1:Nexus 7
#192.168.88.0/23 dev wlan0 proto kernel scope link src 192.168.89.48
#Case 2: Smartsian T1,Huawei C8813
#default via 192.168.88.1 dev eth0 metric 30
#8.8.8.8 via 192.168.88.1 dev eth0 metric 30
#114.114.114.114 via 192.168.88.1 dev eth0 metric 30
#192.168.88.0/23 dev eth0 proto kernel scope link src 192.168.89.152 metric 30
#192.168.88.1 dev eth0 scope link metric 30
ip_addrs=$(awk {'if( NF >=9){print $9;}'} addrs.txt)
echo "the device ip address is $ip_addrs"
Попробуйте:
adb shell ip addr show rmnet0 | grep 'inet ' | cut -d' ' -f6|cut -d/ -f1
Он вернет ваш IPV4, назначенный оператором
172.22.1.215
adb shell ip addr > ippdetails.txt Это получит весь список ip, назначенных устройствам.
загрузите это приложение из здесь, это поможет вам развернуть все команды. Я запускаю netcfg, и он дает результат, как показано на экране.
Попробуйте эту команду для версии <= Marshmallow,
adb devices
Список устройств, подключенных к устройству 38ccdc87
adb tcpip 5555
перезапуск в режиме TCP порт: 5555
adb shell ip addr show wlan0
24: wlan0: mtu 1500 qdisc mq состояние UP qlen 1000 ссылка/эфир ac: c1: ee: 6b: 22: f1 brd ff: ff: ff: ff: ff: ff inet 192.168.0.18/24 brd 192.168.0.255 область действия global wlan0 valid_lft forever предпочитаемый_lft forever inet6 fd01 :: 1d45: 6b7a: a3b: 5f4d/64 глобальная временная динамическая valid_lft 287сек предпочитаемый_lft 287сек inet6 fd01 :: aec1: eeff: fe6b: 22f1/64 глобальная динамическая valid_lft 287сек предпочитаемый_файл 287сек предпочитаемый_ aec1: eeff: fe6b: 22f1/64 ссылка области действия valid_lft forever предпочитаемый_lft forever
Для подключения к вашему устройству запустите
adb connect 192.168.0.18
подключен к 192.168.0.18:5555
Убедитесь, что у вас есть adb в этом месте android-sdk\platform-tools
ip route | grep rmnet_data0 | cut -d" " -f1 | cut -d"/" -f1
Измените rmnet_data0
на нужный nic, в моем случае rmnet_data0
представляет данные nic.
Чтобы получить список доступных nic, вы можете использовать ip route
Эта команда покажет ваш IP-адрес
adb shell ip addr show wlan0 | grep inet
Вы также можете попробовать это:
Шаг 1: adb shell Шаг 2: ip -f inet addr show wlan0