Compare commits

10 Commits

Author SHA1 Message Date
Ground-Zerro
b5f8aeb65f Delete main.py 2025-10-03 12:53:59 +11:00
Ground-Zerro
bba8015ae5 Update README.md 2025-10-03 12:48:30 +11:00
Ground-Zerro
94b523c85f Create main.py 2025-10-03 12:46:58 +11:00
Ground-Zerro
78f2bf93e8 Create config.ini 2025-10-03 12:43:46 +11:00
Ground-Zerro
ff0e50f790 Delete .gitignore 2025-10-03 12:43:44 +11:00
Ground-Zerro
f937106d52 Update convert.bat 2025-10-03 12:42:06 +11:00
Ground-Zerro
a6caea23e3 Update .gitignore 2025-10-03 12:41:38 +11:00
Ground-Zerro
535f01a2c0 Update convert.bat 2025-10-03 12:37:38 +11:00
Ground-Zerro
1a8476a1e5 Update Win.bat 2025-10-03 12:20:12 +11:00
Ground-Zerro
92b70ea00e Create README.md 2025-10-03 12:20:09 +11:00
5 changed files with 347 additions and 322 deletions

125
.gitignore vendored
View File

@@ -1,125 +0,0 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class
# C extensions
*.so
# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
# Translations
*.mo
*.pot
# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal
# Flask stuff:
instance/
.webassets-cache
# Scrapy stuff:
.scrapy
# Sphinx documentation
docs/_build/
# PyBuilder
target/
# Jupyter Notebook
.ipynb_checkpoints
# IPython
profile_default/
ipython_config.py
# pyenv
.python-version
# celery beat schedule file
celerybeat-schedule
# dotenv
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/
# Spyder project settings
.spyderproject
.spyproject
# Rope project settings
.ropeproject
# mkdocs documentation
/site
# mypy
.mypy_cache/
.dmypy.json
dmypy.json
# Pyre type checker
.pyre/
# VS Code
.vscode/
# Local configuration files
config.ini
# Custom DNS list
custom-dns-list.txt
# Platform and DNS databases
platformdb
dnsdb

View File

@@ -1,98 +1,98 @@
@echo off
setlocal enabledelayedexpansion
chcp 65001 > NUL
REM Проверка Python 3
:CheckPython
python --version 2>NUL | findstr /I "Python 3" >NUL
if ERRORLEVEL 1 (
echo Python 3 не установлен.
choice /C YN /M "Установить?"
if ERRORLEVEL 2 (
echo Без Python 3 ничего не получится...
pause
exit /b 1
) else (
call :InstallPython
)
) else (
echo Python 3 установлен.
)
goto :CheckModules
REM Инсталляция Python 3
:InstallPython
echo Загрузка дистрибутива...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -OutFile 'python_installer.exe'} else {Start-BitsTransfer -Source 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -Destination 'python_installer.exe'}"
REM Проверяем успешность загрузки
if not exist "python_installer.exe" (
echo Ошибка загрузки установщика Python 3.
pause
exit /b 1
)
REM Установка Python 3
echo Установка...
echo PS - не забудьте ее разрешить в соседнем окне
python_installer.exe /quiet InstallAllUsers=1 PrependPath=1
del /q /f python_installer.exe
REM Оповещение о перезапуске
echo.
echo Установка завершена, но требуется обновить окружение.
echo - закройте это окно и запустите скрипт снова.
pause
exit /b 0
REM Проверка и установка необходимых модулей Python
:CheckModules
set "modules=requests dnspython ipaddress configparser httpx colorama"
echo.
echo Проверка необходимых библиотек...
for %%m in (%modules%) do (
pip show %%m >NUL 2>&1
if ERRORLEVEL 1 (
echo Установка библиотеки %%m...
pip install %%m
if ERRORLEVEL 1 (
echo Не удалось установить библиотеку %%m. Проверьте pip.
exit /b 1
)
)
)
goto :DownloadMain
REM Загрузка и запуск main.py
:DownloadMain
echo Загрузка Domain Mapper...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/main/main.py' -OutFile 'main.py'} else {Start-BitsTransfer -Source 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/main/main.py' -Destination 'main.py'}"
if not exist "main.py" (
echo Ошибка загрузки Domain Mapper.
pause
exit /b 1
)
cls
REM Запуск main.py
echo Запускаем...
python main.py
if ERRORLEVEL 1 (
echo Ошибка выполнения main.py.
pause
del /q /f main.py
exit /b 1
)
move /y domain-ip-resolve.txt %UserProfile%\Desktop\domain-ip-resolve.txt
echo Программа завершена.
del /q /f main.py
endlocal
echo файл скопирован в %UserProfile%\Desktop\domain-ip-resolve.txt
pause
exit /b 0
::То-ли при выгрузке на github, то-ли при скачивании с него, в файл как-то попадает BOM... Как это починить я ХЗ.
@echo off
setlocal enabledelayedexpansion
chcp 65001 > NUL
REM Проверка Python 3
:CheckPython
python --version 2>NUL | findstr /I "Python 3" >NUL
if ERRORLEVEL 1 (
echo Python 3 не установлен.
choice /C YN /M "Установить?"
if ERRORLEVEL 2 (
echo Без Python 3 ничего не получится...
pause
exit /b 1
) else (
call :InstallPython
)
) else (
echo Python 3 установлен.
)
goto :CheckModules
REM Инсталляция Python 3
:InstallPython
echo Загрузка дистрибутива...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -OutFile 'python_installer.exe'} else {Start-BitsTransfer -Source 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -Destination 'python_installer.exe'}"
REM Проверяем успешность загрузки
if not exist "python_installer.exe" (
echo Ошибка загрузки установщика Python 3.
pause
exit /b 1
)
REM Установка Python 3
echo Установка...
echo PS - не забудьте ее разрешить в соседнем окне
python_installer.exe /quiet InstallAllUsers=1 PrependPath=1
del /q /f python_installer.exe
REM Оповещение о перезапуске
echo.
echo Установка завершена, но требуется обновить окружение.
echo - закройте это окно и запустите скрипт снова.
pause
exit /b 0
REM Проверка и установка необходимых модулей Python
:CheckModules
set "modules=requests dnspython ipaddress configparser httpx colorama"
echo.
echo Проверка необходимых библиотек...
for %%m in (%modules%) do (
pip show %%m >NUL 2>&1
if ERRORLEVEL 1 (
echo Установка библиотеки %%m...
pip install %%m
if ERRORLEVEL 1 (
echo Не удалось установить библиотеку %%m. Проверьте pip.
exit /b 1
)
)
)
goto :DownloadMain
REM Загрузка и запуск main.py
:DownloadMain
echo Загрузка Domain Mapper...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/main/main.py' -OutFile 'main.py'} else {Start-BitsTransfer -Source 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/main/main.py' -Destination 'main.py'}"
if not exist "main.py" (
echo Ошибка загрузки Domain Mapper.
pause
exit /b 1
)
cls
REM Запуск main.py
echo Запускаем...
python main.py
if ERRORLEVEL 1 (
echo Ошибка выполнения main.py.
pause
del /q /f main.py
exit /b 1
)
move /y domain-ip-resolve.txt %UserProfile%\Desktop\domain-ip-resolve.txt
echo Программа завершена.
del /q /f main.py
endlocal
echo файл скопирован в %UserProfile%\Desktop\domain-ip-resolve.txt
pause
exit /b 0
::То-ли при выгрузке на github, то-ли при скачивании с него, в файл как-то попадает BOM... Как это починить я ХЗ.

130
old/config.ini Normal file
View File

@@ -0,0 +1,130 @@
[DomainMapper]
# Локальный режим - загружать список сервисов и/или DNS серверов из локального файла
# yes - включить
# no или пусто - выключить
localplatform = yes
localdns = yes
# Имена сервисов, разделенные запятыми, для разрешения доменных имен в IP-адреса без запроса у пользователя
# опции:
# пустое значение - пользователю будет выведено меню выбора
# all - проверить все сервисы
# Antifilter community edition - список заблокированных DNS имен формируемый сообществом
# ITDog Inside - ресурсы, в том числе зарубежные, которые блокируются или сами блокируют доступ из России.
# ITDog Outside - ресурсы, которые доступны только внутри России и блокируют доступ из-за рубежа.
# Youtube
# Facebook
# Openai
# Tik-Tok
# Instagram
# Twitter
# Netflix
# Bing
# Adobe
# Apple
# Google
# Torrent Trackers - торрент трекеры
# Search engines - поисковые системы
# Github Copilot - ИИ помощник от github
# Twitch
# Discord
# Jetbrains
# Xbox
# Telegram
# Online movie theaters - некоторые из популярных оналйн кинотеатров
# custom - Custom DNS list, это файл "custom-dns-list.txt" расположенный в одном каталоге со скриптом
service =
# DNS сервера (номер), разделенные пробелом, которые будут использоваться для разрешения доменных имен
# опции:
# пустое значение - пользователю будет выведено меню выбора
# 0 - использовать все доступные DNS серверы
# 1 - Системный DNS
# 2 - Google Public DNS
# 3 - Quad9
# 4 - Cloudflare DNS
# 5 - OpenDNS
# 6 - Cisco Umbrella
# 7 - DNS.Watch
# 8 - Dyn
# 9 - CleanBrowsing
# 10 - Alternate DNS
# 11 - AdGuard DNS
# 12 - Control D
# 13 - Yandex (основной)
dnsserver =
# Включить фильтрацию IP-адресов cloudflare и не записывать их в файл результатов
# опции:
# пустое значение - пользователю будет выведено меню выбора
# yes - исключить IP адреса cloudflare из итогового списка
# no - оставить IP адреса cloudflare в итоговом списке
cloudflare =
# Сгруппировать подсети
# опции:
# пустое значение - пользователю будет выведено меню выбора
# 16 - группировка подсетей до /16 (255.255.0.0)
# 24 - группировка подсетей до /24 (255.255.255.0)
# mix - /24 и /32 в одном файле
# no - оставить как есть
subnet =
# Имя конечного файла
# опции:
# пустое значение - "domain-ip-resolve.txt" в каталоге со скриптом
# имя_файла - файл с указанным именем будет сохранен в каталоге со скриптом
# полный_путь/имя_файла - файл будет сохранен с указанным именем в указанной каталоге
filename =
# Количество потоков сканирования, если не указано - будет использоваться 20 потоков
threads = 5
# Формат сохранения файла результатов
# опции:
# пустое значение - пользователю будет выведено меню выбора
# ip - только IP адрес
# unix - ip rote %IP%/32 %gateway%
# cidr - %IP%/32
# win - rote add %IP% mask 255.255.255.255 %gateway%
# mikrotik - /ip/firewall/address-list add list=%LIST_NAME% comment=%SERVICE_NAME% address=%IP%/32
# ovpn - push "route %IP% 255.255.255.255"
# wireguard - %IP%/32, и т.д...
# keenetic - ip route %IP%/32 %gateway% auto !%LIST_NAME%
filetype =
# адрес шлюза или имя интерфейса - используется при сохранении IP-адресов в 'win' и 'unix' формате
# опции:
# пустое значение - пользователю будет выведен запрос с подсказкой
# укажите IP-адрес шлюза или имя интерфейса
gateway =
# адрес шлюза или имя интерфейса - используется при сохранении IP-адресов в 'keenetic' формате
# опции:
# пустое значение - пользователю будет выведен запрос с подсказкой
# укажите IP-адрес шлюза или имя интерфейса или IP-адрес шлюза и через пробел имя интерфейса
keenetic =
# имя списка - используется при сохранении IP-адресов в 'mikrotik' формате
# опции:
# пустое значение - пользователю будет выведен запрос с подсказкой
# укажите имя
listname =
# комментарий - используется при сохранении IP-адресов в 'mikrotik' формате
# опции:
# on - если вам нужен comment=%SERVICE_NAME% в строке
# off - убрать comment=%SERVICE_NAME% из строки
mk_comment = off
# Показывать сведения о загруженной конфигурации при запуске скрипта
# опции:
# yes или пустое значение - показывать
# no - скрыть
cfginfo = yes
# Команда для консоли после завершения скриптом всех операций, может быть полезно для автоматизации и комбинирования с другим скриптом, кодом или программой
# опции:
# исполняемая_команда_для_консоли
run =

20
utilities/win/README.md Normal file
View File

@@ -0,0 +1,20 @@
# Запуск вспомогательных утилит под Win:
- [convert - конвертер маршрутов](#convert)
**Описание:** Поставит Python и зависимости, запустит выбранную утилиту.
## convert
**Использование:**
- Открыть командную строку Windows и выполнить команду:
```
powershell -Command "irm https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/refs/heads/main/utilities/win/convert.bat -OutFile $env:TEMP\convert.bat" && cmd /c "%TEMP%\convert.bat"
```
или
- Запустить PowerShell и выполнить команду:
```
irm https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/refs/heads/main/utilities/win/convert.bat -OutFile "$env:TEMP\convert.bat"; cmd /c "$env:TEMP\convert.bat"
```
**Можете:**
- Скачать convert.bat и запустить его.

View File

@@ -1,99 +1,99 @@
@echo off
setlocal enabledelayedexpansion
chcp 65001 > NUL
REM Проверка Python 3
:CheckPython
python --version 2>NUL | findstr /I "Python 3" >NUL
if ERRORLEVEL 1 (
echo Python 3 не установлен.
choice /C YN /M "Установить?"
if ERRORLEVEL 2 (
echo Без Python 3 ничего не получится...
pause
exit /b 1
) else (
call :InstallPython
)
) else (
echo Python 3 установлен.
)
goto :CheckModules
REM Инсталляция Python 3
:InstallPython
echo Загрузка дистрибутива...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -OutFile 'python_installer.exe'} else {Start-BitsTransfer -Source 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -Destination 'python_installer.exe'}"
REM Проверяем успешность загрузки
if not exist "python_installer.exe" (
echo Ошибка загрузки установщика Python 3.
pause
exit /b 1
)
REM Установка Python 3
echo Установка...
echo PS - не забудьте ее разрешить в соседнем окне
python_installer.exe /quiet InstallAllUsers=1 PrependPath=1
del /q /f python_installer.exe
REM Оповещение о перезапуске
echo.
echo Установка завершена, но требуется обновить окружение.
echo - закройте это окно и запустите скрипт снова.
pause
exit /b 0
REM Проверка и установка необходимых модулей Python
:CheckModules
set "modules=requests dnspython ipaddress configparser httpx colorama"
echo.
echo Проверка необходимых библиотек...
for %%m in (%modules%) do (
pip show %%m >NUL 2>&1
if ERRORLEVEL 1 (
echo Установка библиотеки %%m...
pip install %%m
if ERRORLEVEL 1 (
echo Не удалось установить библиотеку %%m. Проверьте pip.
exit /b 1
)
)
)
goto :DownloadMain
REM Загрузка и запуск main.py
:DownloadMain
echo Загрузка Domain Mapper Converter...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://github.com/Ground-Zerro/DomainMapper/raw/refs/heads/main/utilities/convert.py' -OutFile 'main.py'} else {Start-BitsTransfer -Source 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/main/main.py' -Destination 'main.py'}"
if not exist "main.py" (
echo Ошибка загрузки Domain Mapper Converter.
pause
exit /b 1
)
@echo. >> ip.txt
cls
REM Запуск main.py
echo Запускаем...
python main.py
if ERRORLEVEL 1 (
echo Ошибка выполнения main.py.
pause
del /q /f main.py
exit /b 1
)
move /y ip.txt %UserProfile%\Desktop\ip.txt
echo Программа завершена.
del /q /f main.py
endlocal
echo файл скопирован в %UserProfile%\Desktop\ip.txt
pause
exit /b 0
@echo off
setlocal enabledelayedexpansion
chcp 65001 > NUL
REM Проверка Python 3
:CheckPython
python --version 2>NUL | findstr /I "Python 3" >NUL
if ERRORLEVEL 1 (
echo Python 3 не установлен.
choice /C YN /M "Установить?"
if ERRORLEVEL 2 (
echo Без Python 3 ничего не получится...
pause
exit /b 1
) else (
call :InstallPython
)
) else (
echo Python 3 установлен.
)
goto :CheckModules
REM Инсталляция Python 3
:InstallPython
echo Загрузка дистрибутива...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -OutFile 'python_installer.exe'} else {Start-BitsTransfer -Source 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe' -Destination 'python_installer.exe'}"
REM Проверяем успешность загрузки
if not exist "python_installer.exe" (
echo Ошибка загрузки установщика Python 3.
pause
exit /b 1
)
REM Установка Python 3
echo Установка...
echo PS - не забудьте ее разрешить в соседнем окне
python_installer.exe /quiet InstallAllUsers=1 PrependPath=1
del /q /f python_installer.exe
REM Оповещение о перезапуске
echo.
echo Установка завершена, но требуется обновить окружение.
echo - закройте это окно и запустите скрипт снова.
pause
exit /b 0
REM Проверка и установка необходимых модулей Python
:CheckModules
set "modules=requests dnspython ipaddress configparser httpx colorama"
echo.
echo Проверка необходимых библиотек...
for %%m in (%modules%) do (
pip show %%m >NUL 2>&1
if ERRORLEVEL 1 (
echo Установка библиотеки %%m...
pip install %%m
if ERRORLEVEL 1 (
echo Не удалось установить библиотеку %%m. Проверьте pip.
exit /b 1
)
)
)
goto :DownloadMain
REM Загрузка и запуск main.py
:DownloadMain
echo Загрузка Domain Mapper Converter...
powershell -Command "if ($PSVersionTable.PSVersion.Major -ge 3) {Invoke-WebRequest -Uri 'https://github.com/Ground-Zerro/DomainMapper/raw/refs/heads/main/utilities/convert.py' -OutFile 'main.py'} else {Start-BitsTransfer -Source 'https://raw.githubusercontent.com/Ground-Zerro/DomainMapper/main/main.py' -Destination 'main.py'}"
if not exist "main.py" (
echo Ошибка загрузки Domain Mapper Converter.
pause
exit /b 1
)
@echo. >> ip.txt
cls
REM Запуск main.py
echo Запускаем...
python main.py
if ERRORLEVEL 1 (
echo Ошибка выполнения main.py.
pause
del /q /f main.py
exit /b 1
)
move /y ip.txt %UserProfile%\Desktop\ip.txt
echo Программа завершена.
del /q /f main.py
endlocal
echo файл скопирован в %UserProfile%\Desktop\ip.txt
pause
exit /b 0