Как я могу узнать, какой IP-адрес у моего телефона Android?

102

Я хотел бы знать, какой IP-адрес у моего телефона Android. Например, если я использую свой телефон через WiFi, как я могу получить локальный IP-адрес, назначенный моему телефону?

Jonas
источник

Ответы:

121

Самый простой способ - зайти в настройки WiFi и нажать Menu > Advanced. Он появится там, или вы можете установить статический IP-адрес, если хотите.

Классный способ - набрать номер, *#*#4636#*#*чтобы открыть меню тестирования. Затем нажмите Информация о WiFi, затем Состояние WiFi.

kcoppock
источник
2
Когда я звоню , ##4636##я получаю это сообщение: Connection problem or invalid MMI code. А в расширенном меню настроек WiFi я не вижу IP-адрес, если он установлен DHCP. Но спасибо за это меню, я не знал об этом.
Джонас
Ха-ха, извини за это, да, видимо, звездочка превращается в знак курсива? Таким образом, вы не можете увидеть свой адрес DHCP в настройках WiFi? Я запускаю CyanogenMod и вижу мое в нижней части меню. Не знал, что это не стандартная функция. : O
kcoppock
Нет, на моем Nexus One с Android 2.2 нет IP-адреса. но это Testing menyбыло очень хорошо.
Джонас
13

ifconfigи ipAndroid 7

adb shell ifconfig
adb shell ip address show

ifconfig была раздражающая реализация, которая не показывала все версии по умолчанию в более ранних версиях, как объяснено ниже, но теперь она работает нормально.

netcfg Android 5.1.1

Этот инструмент был удален в более ifconfigпоздней версии Android и стал более приличным и по умолчанию показывает все интерфейсы, что делает этот метод бесполезным в новых версиях.

adb shell netcfg | grep wlan0

с вашего рабочего стола - лучший вариант, если вы уже разрабатываете для Android и имеете adbи настройку USB-соединения.

Образец вывода:

wlan0 UP 192.168.0.3/24 [...]

Подтвердите с помощью:

adb shell ifconfig wlan0

ifconfigна Android ( самодельный ?) отличается от настольных компьютеров ( net-toolsпакет на Ubuntu 15.10) тем, что требует предоставления интерфейса.

Это также упоминается в: Есть ли команда или приложение, подобное ipconfig?

Кроме того, можно установить эмулятор терминала , как Teriminal Emulator от Джека Palevich , откройте его и введите: netcfg. Но в этом случае вам лучше использовать приложение, отображающее IP-адреса, так как набирать текст на устройствах очень сложно (если у вас нет внешней клавиатуры ...).

Если все, что вам нужно, чтобы SSH в устройство, adb shellэто путь: https://stackoverflow.com/a/34040560/895245

Если вы разрабатываете серверное приложение, наиболее удобным для пользователя будет показывать IP-адреса устройства на некоторых устройствах TextView, использующих метод чисто Java: https://stackoverflow.com/questions/494465 | https://stackoverflow.com/questions/6064510/how-to-get-ip-address-of-the-device

Управление браузером маршрутизатора

Если вы находитесь дома, вы можете:

  • подключите ваш рабочий стол к маршрутизатору с помощью кабеля Ethernet
  • получить доступ к какому-либо адресу, зависящему от продавца магии, часто http://192.168.0.1
  • у большинства поставщиков есть список IP-адресов устройств где-то там

птар

Если на вашем устройстве работает сервер, например, SSHD на порту 2222, как описано по адресу: https://stackoverflow.com/a/34040560/895245 , вы можете выполнить его сканирование портов:

sudo nmap -sV --open 192.168.0.0/24 -p2222
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
источник
Работает и на Android 4.2.1.
Повелитель огня
9

Самый простой способ - использовать такой инструмент, как, например, OS Monitor , который показывает вам (среди прочего) также много сетевых деталей:

Монитор ОС
Монитор ОС, показывающий детали сетевого интерфейса (источник: Google Play ; нажмите на изображение, чтобы увеличить его)

Как показано на скриншоте, это приложение показывает для каждого сетевого интерфейса:

  • имя интерфейса¹
  • IPv4 IP-адрес назначен (если 0.0.0.0этот интерфейс в настоящее время не используется)
  • IPv6-адрес (если есть)
  • MAC-адрес
  • пакетная статистика (т.е. переданные данные)
  • статус

¹ имена интерфейсов могут обрабатываться по-разному на разных устройствах. Но в большинстве случаев вы можете сказать по IP, где он принадлежит. Кроме того, rmnetв основном используется для GPRS (мобильные данные), в то время как Wi-Fi использует такие имена, как tiwlanили eth.

Иззи
источник
1

В любом приложении эмулятора терминала:

~$ ip -o a

Применимо как для WiFi, так и для мобильных данных. Не требует рута.

Ирфан Латиф
источник