Есть ли в Android «страница настройки маршрутизатора» при работе в качестве беспроводной или проводной точки доступа?

Я могу редактировать все важные аспекты моей точки доступа/маршрутизатора в параметрах настройки конфигурации точки доступа/маршрутизатора.

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

Одна из моих попыток получить эту информацию для себя заключалась в том, чтобы попытаться перейти 192.168.6.1через веб-браузер — это, конечно же, IP-адрес телефона. Я надеялся увидеть какую-то страницу настройки маршрутизатора, которую вы обычно видите при настройке обычного проводного/беспроводного маршрутизатора Ethernet через веб-браузер, но, к сожалению, такой страницы не было.

Я провел небольшое исследование и обнаружил, что вы можете получить некоторую базовую информацию о конфигурации IP телефона, загрузив эмулятор терминала и выполнив несколько основных команд *nix.

Я искал что-то большее - графический интерфейс был бы отличным, но я приму любые предложения о том, как получить доступ к спецификациям конфигурации маршрутизации телефона.

Есть ли какая-либо «страница настройки маршрутизатора», к которой я могу получить доступ, когда я включаю беспроводную точку доступа на своем телефоне Android?

См. этот ответ — если вы используете встроенную поддержку модема, конфигурация отсутствует, IP-адреса, используемые для точки доступа Wi-Fi и USB-модема, жестко запрограммированы.
Up to Pie dnsmasq— это DHCP/DNS-сервер Android. Вы можете настроить его, dnsmasq.confнапример, для постоянного назначения статического IP-адреса привязанным клиентам или с помощью некоторых хаков, например, для постоянного изменения IP-адреса точки доступа или для изменения диапазона IP-адресов DHCP точки доступа по умолчанию .

Ответы (2)

Встроенный Wi-Fi-модем Android предназначен для использования 192.168.43.1/24 в качестве сервера, а netd обрабатывает модем с использованием dnsmasq. Первый диапазон DNS — 192.168.42.1-254, а второй диапазон DNS — 192.168.43.1-254.

Netd не легко изменить. Для связи с ним требуется сокет, и этот сокет используется, когда андроид начинает привязку. Но просматривая исходные файлы для Tethering.java (я использовал Froyo), мы видим:

// usb client will be provided 192.168.42.129
private static final String USB_NEAR_IFACE_ADDR      = "192.168.42.129";
private static final String USB_NETMASK              = "255.255.255.0";

// FYI - the default wifi is 192.168.43.1 and 255.255.255.0

private String[] mDhcpRange;
private static final String DHCP_DEFAULT_RANGE1_START = "192.168.42.2";
private static final String DHCP_DEFAULT_RANGE1_STOP  = "192.168.42.254";
private static final String DHCP_DEFAULT_RANGE2_START = "192.168.43.2";
private static final String DHCP_DEFAULT_RANGE2_STOP  = "192.168.43.254";

И позже мы видим, что эти диапазоны используются, КАК РЕЗЕРВНЫЕ КОПИИ .

    mDhcpRange = context.getResources().getStringArray(
            com.android.internal.R.array.config_tether_dhcp_range);
    if ((mDhcpRange.length == 0) || (mDhcpRange.length % 2 ==1)) {
        mDhcpRange = new String[4];
        mDhcpRange[0] = DHCP_DEFAULT_RANGE1_START;
        mDhcpRange[1] = DHCP_DEFAULT_RANGE1_STOP;
        mDhcpRange[2] = DHCP_DEFAULT_RANGE2_START;
        mDhcpRange[3] = DHCP_DEFAULT_RANGE2_STOP;
    }

Основным источником для диапазонов dhcp являются не жестко заданные 42 и 43, а чтение из array.config_tether_dhcp_range, внутреннего массива строк. Но в настоящее время он пуст.

Вы можете редактировать структуру Android. На моем телефоне это /system/framework/framework-res.apk. В Интернете есть множество руководств по редактированию framework- res.apk , от простых строк до полной тематики. Найдите один для вашего телефона и версии Android.

Главное, что вы хотите изменить, это файл /res/values/arrays.xml.

Искать<array name="config_tether_dhcp_range" />

Изменить на:

<string-array name="config_tether_dhcp_range">
     <item>192.168.x.y</item>
     <item>192.168.x.z</item>
</string-array>

скомпилируйте/заархивируйте/подпишите по мере необходимости (следуйте инструкциям), затем переустановите.

Если вам нужно более одного диапазона, просто скопируйте два элемента снова и снова. Вам всегда нужно указать начало и конец для каждого диапазона. Постарайтесь сохранить его в том же /24, то есть 192.168.50.5 и 192.168.50.99 или что-то еще. Вы можете подтвердить, что он работает, busybox ps | grep dnsmasqили, если у вас нет busybox, ps dnsmasqиспользуйте pid в cat /proc/pid/cmdline. Вы должны получить (или аналогичный):

/system/bin/dnsmasq --no-daemon --no-poll -no-resolv --dhcp-range=192.168.50.5,192.168.50.99,1h

FWIW, мой модем WIFI использует диапазоны dnsmasq по умолчанию, но моему компьютеру был назначен 192.168.43.147/24 и шлюз 192.168.43.1/24. Не знаю, почему у вас по умолчанию используется адрес 42.x.

FWIW, используя «Ethernet Tethering» на моем Samsung S20, мое подключенное устройство получает адрес 192.168.13.200/24 ​​и шлюз 192.168.13.25.

Интересно, что мое приложение «Net Analyzer» показывает внешний IP-адрес моего телефона как 172.58.200.200 и внутренний IP-адрес 33.15.32.108/28.

Сколько роутеров в моем телефоне...?

Это не дает ответа на вопрос. Когда у вас будет достаточно репутации , вы сможете комментировать любой пост ; вместо этого предоставьте ответы, которые не требуют разъяснений от спрашивающего . - Из обзора