Подключил к своему компу телефон HTC с андроидом. Нажал на телефоне на кнопку для включения reverse tethering over usb, чтобы на телефоне пользоваться интернетом с компа. NetworkManager на удивление увидел телефон, создался интерфейс usb0, NM получил по DHCP IP-адрес от сервера на телефоне. Но на этом всё и закончилось. Андроид упорно не видел, что подключение состоялось, а NM не настроил NAT в iptables для раздачи интернета.
Оказалось, что телефон ожидает магической последовательности байт на порту 6000 от компа, означающей, что комп подключился и раздаёт интернет. Ладно, допустим, можно написать соответствующий скрипт и вызывать его при поднятии подключения — для этого в убунте был плагин к NM (хоть я и без понятия, как им пользоваться на других дистрибутивах, но думаю, с этим можно разобраться). Проблему здесь вызывает только меняющийся каждый раз IP-адрес телефона, но его можно выдернуть из /var/lib/dhclient/dhclient-*-usb0.lease.
С iptables всё хуже: здесь неправильно аналогичным скриптом в if-up.d настраивать NAT, потому что NM тоже меняет iptables и ничего не знает о внесённых нами изменениях. Кажется, в настоящее время NM не трогает чужие записи в iptables, но было бы неплохо иметь возможность в настройках поставить галочку «раздавать интернет» независимо от настроек IP-адреса, а сейчас есть возможность раздавать интернет через NM только тогда, когда этот же комп назначает себе адрес 10.42.0.1 (который, кстати, никак не поменять) и является DHCP-сервером в сети, куда раздаётся интернет, что не соответствует данной ситуации.
Ещё хуже с DUN over bluetooth. Мой телефон Nokia не поддерживает одну из AT-команд, которые посылает ему NM, поэтому соединение не удаётся. И никак это не исправить (кроме как пропатчить modem-manager у себя локально, что я и делал, когда мне это было нужно), потому что настроек посылаемых AT-команд у NetworkManager'а нет. Да они же были даже в Windows XP (а, может быть, и гораздо раньше, этого не помню). Видимо, разработчики NM решили пойти по стопам GNOME и даже обойти его: они не выпиливают нужные фичи, они их просто изначально не запиливают и не собираются.
Совсем плохо с раздачей интернета через Wi-Fi. Раздавать в master mode NM в принципе не умеет. В ad-hoc у него это получается только с шифрованием WEP, а если установить WPA, то просто ничего не будет работать. Тем временем, я видел ноут с вендой 7, который стандартными средствами создавал точку доступа с WPA2 (был ли это master mode или ad-hoc, я не знаю).
Кажется, довольно давно развивается проект, а новых возможностей с новыми версиями и незаметно. Таких элементарных вещей, как настройки, до сих пор нет, а там, где они есть, они сильно ограничены. Нет нормальной поддержки Wi-Fi. И это я уже не говорю о всяких специфичных вещах вроде vlan, мостов и т.п., а только о повседневно нужных возможностях, которыми пользуется обычный пользователь на ноутбуке.