Я пытаюсь подключить новый сеанс PPoE, отправить и получить некоторые данные и закрыть сеанс.
У меня есть модуль FOSS Python, который мне поможет?
Обратите внимание, что я нашел https://github.com/jamiesun/pyras , но, похоже, у него нет документации :-(
[Обновление] Я также нашел win32ras (по крайней мере, я нашел документацию; я еще не нашел ссылку для скачивания), которая кажется полезной, хотя и не очень документированной. Есть несколько примеров вокруг.
Я ищу здесь авторитетный ответ от кого-то, у кого есть опыт.
Я требую, чтобы рекомендуемый модуль Python мог выполнять полный PPPoE, включая настройку LCP и аутентификацию PADI/PDO и т. д. (я сильно подозреваю, что это обрабатывается службой Windows RAS, но требуется подтверждение).
Рекомендуемая документация также должна содержать адекватную документацию или примеры кода, показывающие, как можно отправить URL-адрес и получить данные через установленное им соединение PPPoE.
Поддержка Linux является бонусом, но не обязательным.
не силен в английском. вы можете импортировать модуль win32ras
просто так: импортировать win32ras
"""""""""""""""""""""""""""""""""""""""""""""""""" """"""""""" Кстати, модуль pyras - это просто тест, автор сказал:的拨号和代理检测功能(采用了 shell xu的建议),放了一个简单的开源版,界面用的Tkinter,才200多〠砣
目前在win7 64下测试OK,xp还没有测试,问题应该不大。
https://github.com/jamiesun/pyras
并没有 实现 pppoe 协议 , 因为 我 发现 其 实用 实用 pywin32 可以 好 的 利用 系统 的 的 pppoe 功能 每 个 宽带 都 有 个 个 个 的 的 的 功能。 个 宽带 连接 有 个 个 个 个 个 个 用调 系统 系统 系统 系统 系统 系统 系统 系统 框 框 框 框 框 框 框 框 框 框 框了,很多参数可以自己配置。使用w32ras基本可以很好的控制。
另外 就 用 了 Pycap 和 dpkt 来 分析 检测 代理 , 发现 目的 ip 为 本机 的 http 请求 判断 为 代理 (不 本机 访问 自己 http 服务)
防止路由的功能我也想好了,和AAA服务器扩展下,每天都使用一个动态的用户名,用路由肯定ロ定
使用pyinstaller打包exe,一般人反编译也不太容易。"
[Обновление от OP] Я запустил это через Google переводчик и получил
Цель обучения - попробовать эксперимент, используя python для достижения клиента коммутируемого доступа pppoe для достижения базового обнаружения коммутируемого доступа и прокси (используя рекомендации оболочки xu), поставить простую версию интерфейса с открытым исходным кодом с Tkinter, Всего более 200 строк кода.
На данный момент в win7 64 тест ок, xp не проверял, проблем быть не должно.
И не достиг соглашения PPPOE, потому что я обнаружил, что на самом деле может быть хорошей функцией pppoe системы pywin32 использования. Каждое широкополосное соединение имеет файл конфигурации rasphone.pbk, пока копия конфигурации не будет передана в системное диалоговое окно для создания процесса, многие параметры могут быть настроены. Использование базового w32ras может быть очень хорошим управлением.
Другой - использовать анализ пакетов pycap и dpkt и обнаружение агента пакета, найденного ip, с целью http-запроса машины для определения агента (не влияет на доступ машины к их http-сервису)
Я также хочу предотвратить функцию маршрутизации и расширение сервера AAA, ежедневное использование динамического имени пользователя, с маршрутизацией, конечно, устал.
Используйте pyinstaller package exe, большинству людей декомпилировать не так просто.
Ответ от ОП, на всякий случай, если это поможет кому-то в будущем.
Я смоделировал открытие панели управления/сетевых подключений и создание нового соединения PPPoE, а затем смоделировал щелчок по значку.
rasPhoneBookPath="C:\\Users\\User\\AppData\\Roaming\\Microsoft\\Network\\Connections\\Pbk\\TemporaryRasphPhonebook.pbk"
Найдите соответствующий путь (Windows перемещает его в разных версиях, но это всегда .pbk
файл).
Напишите код Python, чтобы создать аналогичный файл. вот части которые я менял
with open(rasPhoneBookPath, "wt") as phoneBookFile :
phoneBookFile.write('[' + pppoeSessionName + '\n')
phoneBookFile.write("PhoneNumber=ACGC:AT+CGDCONT=' + bearerId + ',"IP","' + pppoeSessionName + '"\n")
и имитировать щелчок по значку с помощью
rasDialResult = os.system("rasdial " + "' + pppoeSessionName + '" + " /PHONEBOOK:" + rasPhoneBookPath)
Это работает для меня, на Windows 7