Обход ограничений Yota на раздачу Wi-Fi (tethering) для Mac OS
Привет всем, дорогие друзья!
Обход ограничений Yota на раздачу Wi-Fi (tethering) для Mac OS
Все помнят статью про обход ограничений Yota на раздачу Wi-Fi для Windows, очень хороший вышел пост, на славу вышел, как говорится.
Но сейчас не об этом 🙂
А о том, как обойти ограничение мобильного оператора йота на раздачу интернета с телефона на ноутбук под управлением Mac OS?
Это оказалось очень просто, но не я это нашел, я, можно сказать, сейчас являюсь посредником, не автором метода. За это надо благодарить нашего читателя Просто Блога, Андрея, который любезно предложил нижеописанный метод в комментариях к статье про обход ограничения в Windows, за что ему огромное спасибо 🙂
Итак, немного теории от меня. Чтобы обойти ограничение йоты на раздачу интернета по wi-fi с телефона на макинтош, нужно поменять значение TTL на 65.
Что такое ttl? Грубо говоря, это количество хопов (раз), сколько пакет прошел устройств до сотовой станции. В нашем случае пакет проходит через сотовый телефон, следовательно 65-1=64, до базовой станции йоты пакет приходит с ttl, равным 64 и ничего не палится 🙂
Как поменять ttl в Mac OS для обхода ограничений скорости от Yota?
Ребята, до некоторого времени, чтобы обойти ограничение Yota на раздачу Wi-Fi на Mac OS X, мы с вами задавали команду в консоле ( команда требует root ):
sudo sysctl -w net.inet.ip.ttl=65
Да, команда требует рут, но при перезагрузке компьютера все слетает и нужно вводить команду заново, кто не хочет постоянно лазить в терминал читаем дальше 😉
Настраиваем автозапуск скрипта смены ttl на Mac OS X для обхода ограничения Yota на раздачу Wi-Fi
Напоминаю еще раз, все, что описано в этой статье требует root прав 😉
Также, для тех, кто не знает, не надо копировать в терминал [email protected]:, так как это мой пользователь, у каждого он свой 😉
1) Идем в /Library/StartupItems. Открываем терминал и прописываем: [email protected]:
2) Создаем там папку (например, это будет fuckingyota). В терминале пишем: [email protected]: /Library/StartupItems> sudo mkdir fuckingyota
3) Идем туда. В терминал вставляем: [email protected]: /Library/StartupItems> cd fuckingyota/
4) Создаем там скрипт (он должен называться так же как и папка), который хотим выполнять.
Для создания скрипта в терминал вбиваем:
[email protected]: /Library/StartupItems/fuckingyota> sudo vim fuckingyota
И тут откроется редактор Vim! Сюда копируем сам скрипт:
# Скрипт смены ttl на Mac OS X, спасибо тебе Андрей:
#!/bin/sh
sudo sysctl -w net.inet.ip.ttl=65
И закрываем Vim с сохранением результата, вводим в виме (редакторе): :w! fuckingyota
5) Создаем файл параметров StartupParameters.plist.
[email protected]: /Library/StartupItems/fuckingyota> sudo vim StartupParameters.plist
И тут опять откроется редактор Vim! Сюда копируем содержание файла параметров:
# Самое главное, чтобы в строчке Provides было прописано то же имя, что и название скрипта и название папки:
<
Description = ‘Add static routing tables’;
Provides = (‘fuckingyota’);
Requires = (‘Network’);
OrderPreference = ‘None’;
>
И опять закрываем Vim с сохранением результата, для этого вводим: :w! StartupParameters.plist
6) Выставляем права на выполнение нашему скрипту.
[email protected]: /Library/StartupItems/fuckingyota> sudo chmod 755 fuckingyota
7) Смотрим, что получилось в итоге: [email protected]: /Library/StartupItems/fuckingyota> ll
9) А сейчас, мы не будем перезагружать комп, а просто стартанем скрипт, чтобы убедиться в его работоспособности:
[email protected]: /Library/StartupItems/fuckingyota> sudo SystemStarter start fuckingyota
10) Лезем в браузер, проверяем и получаем профит!
При написании статьи я пользовался не только своими знаниями, спасибо Андрею за скрипт и спасибо KSDaemon за способ автозапуска скриптов в Mac OS X, описанный в его прекрасном блоге 😉
Всем спасибо, комментарии очень и очень приветствуются =)
How do you change the TTL in macOS High Sierra?
How do you change the TTL in macOS High Sierra?
In previous macOS versions, this could be done as follows.
Or permanently by creating or editing /etc/sysctl.conf to adding:
EDIT: Correction on testing the TTL
So if the TTL was previously set to 64 and I change it to 65, I should see a ping TTL increase by 1, however, in 10.13.5, this is not occurring.
2 Answers 2
The ways you gave are still honored.
What may have thrown you off is that ping reports the TTL of the ICMP echo reply received, which is controlled by the target host; that is, the machine that is responding to your ping. I do not think the ICMP echo (ping) protocol provides a way to influence what TTL the target host uses.
I verified this by running tcpdump and looking at what TTL was on my outgoing ICMP echo requests. Be sure to add at least one -v to tcpdump to see the TTLs.
Works for me on 10.15.2 (19C57) Catalina. -w is deprecated, and should be omitted.
Using a launch daemon to persist the setting after reboot: /Library/LaunchDaemons/com.gvalkov.ttl65.plist
Note: I hope I got the path to sysctl correctly! Please run which sysctl to obtain the actual path. I cannot currently check, because my MacBook Pro 2018 is being serviced again for swelling battery and stuck keys. 🙁
Как сделать автоматическую смену ttl при запуске Mac?
Автоматическое изменение TTL при запуске Mac OS X:
1) В программе «TextEdit» создаем новый файл и прописываем там строчку:
Убедитесь что расширение файла поменялось на «.conf».
Для этого снимите галочку «скрыть расширения» в свойствах файла «sysctl.conf».
3) Теперь необходимо перенести этот файл в корень системного диска, в папку «etc»
Для этого — переходим в «Finder» и нажмите следующее сочетание клавиш (cmd+shift+G) в появившемся окне пишем:
(нажимаем кнопку «перейти»)
4) Открываем приложение «Терминал», пишем:
5) В самом начале текста вставляем строку:
- Нажимаем сочетание клавиш:
— Ctrl ⌃ + O. Enter — Чтобы сохранить
— Ctrl ⌃ + X. — Чтобы выйти
(Внизу окна подсказки команд)
6) Закрываем терминал, перезагружаем MacOS
7) После перезагрузки проверяем что «ttl» измененяется автоматически. Запускаем «Терминал» и прописываем следующие команды:
Как без ограничений пользоваться мобильным интернетом на macOS.
Hola! Хитрые операторы мобильной связи представляют широкую линейку безлимитных тарифов, но с условием, что пользоваться интернетом вы будете только на мобильном устройстве. Однако, операторские «ограничения» работают на одной технологии обнаружения раздачи сети. Все дело в таком параметре, как значение TTL оконечного, подключенного устройства.
TTL (Time To Live) — число итераций или переходов, за который набор данных может существовать до своего исчезновения. — Это сложно, не будем глубоко вдаваться. На простом примере: есть телефон с значением TTL — 64 и есть другой телефон, с таким же значением по умолчанию (либо 64, либо 128), так вот, при раздачи интернета, значение подключаемого устройства к раздающему будет уменьшено на 1 пункт и станет равным TTL — 63. Таким образом, операторы связи фиксируют раздачу интернета и ограничивают доступ. Все что нам необходимо сделать — это изменить значение TTL у подключаемого устройства на +1 пункт, то есть изменить значение с 64 до 65.
Чтобы изменить значение TTL на macOS (по умолчанию 64), необходимо выполнить следующее:
- 1. Открываем программу «Терминал» (можно найти, используя поиск), в окне терминала, вводим следующую команду: sudo sysctl -w net.inet.ip.ttl=65
- 2. Нажимаем: « Enter »
- 3. Теперь, вам необходимо в окне терминала прописать ваш пароль от учетной записи пользователя mac (вслепую, символы отображены не будут, не пугайтесь)
- 4. Готово! Значение TTL изменено, проверяем! Все работает!
Вот таким, несложным способом, мы обошли ограничения, кстати, еще и сэкономили, ведь чаще всего, услуга раздачи доступа в интернет — платая. Всем добра и свободного доступа в сеть без ограничений!😊
// После перезагрузки mac, установленное значение TTL остается неизменным.😌🙃
Изменение значения TTL
Image of optical fibers with binary codes
В некоторых жизненных ситуациях вам, как пользователю интернета возможно прийдется изменить значение TTL на нестандартное. Для чего это может пригодиться я писать не буду, опишу лишь как это значение изменить.
Что такое TTL ?
Начнём с того, что у каждого пакета данных, передаваемого с любого нашего устройства, будь то ноутбук, смартфон, планшет, есть особый параметр, называемый «TTL». Расшифровывается он как «Time To Live», или время жизни IP пакета.
TTL, задаваемое пакету по умолчанию, разное у каждого устройства. К примеру, телефоны на iOS и Android имеют default TTL = 64, компьютер на ОС Windows имеет TTL = 128, а на Mac OS так же как и на iOS TTL = 64. С помощью команд указаных ниже мы увеличим значение TTL на +1.
Меняем TTL на Windows.
1. Вызываем окно «Выполнить«. Для этого жмём сочетание клавиш Win+R. В этом окне вводим regedit и жмём OK.
2. Мы попадаем в редактор реестра. Идём по следующему пути: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters
3.Здесь нам нужно кликнуть правой кнопкой мыши по полю справа, и выбрать «Создать —>Параметр DWORD(32 бита)»
4. Имя параметру задаём — «DefaultTTL». Щёлкаем 2 раза по созданному параметру, выбираем Десятичную систему исчисления, и вводим значение 65.
5. Также создаём параметр DefaultTTL=65 для соседней ветки реестра — HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6
Готово, TTL на компьютере изменён! Перезагружаем компьютер.
Меняем TTL на Mac OS
В данном случае у вас есть 2 варианта. Я предпочитаю первый.
Временное изменение значение TTL в Mac OS X (после перезагрузки TTL восстанавливается на дефолтное 64):
1. Открываем Терминал
2. Вводим команду: