Часовете са според зоната UTC + 2 часа [ DST ]



Напиши нова тема Отговори на тема  [ 9 мнения ] 
Автор Съобщение
 Заглавие: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 12 Ное 2009, 19:21 
Аватар

Регистриран на:
03 Юли 2009, 13:09
Мнения: 323
Местоположение: Пловдив
Първо ще се опитам да обясня на потребителите, които незнаят, какво е TTL, какво е TTL филтър, какви видове има и защо се използва.

За тези които са запознати с това що е TTL, преминете направо към края на темата, където е обяснено Как да сменим TTL стойността на iPhone

Малко уточнение:
Това ръководство може да ви помогне ако получавате интернет пакетите от вашия доставчик с TTL=1!
Това ръководство ще ви помогне, ако вашия доставчик филтрира изходящите ви пакети по TTL<128(64)!

Какво е TTL?
- TTL е съкращение от Time To Live. Това е числена стойност която се съдържа в интернет пакетите. Нейната стойност по подразбиране (default TTL) е 128 за Windows и 64 за UNIX/BSD системите. TTL се намаля с 1-ца всеки път когато заявката от пакетите премине през някой сървър/компютър/рутер. Ако тази стойност стане 0, пакетите се отхвърлят автоматично от сървъра към който са препратени.

Пример: Отваяте страницата abv.bg. Това означава, че подавате заявка към сървъра на abv.Тази заявка тръгва от вашия компютър с TTL=128(64) стига до сървъра на вашия интернет доставчик и от там излиза с TTL=127, после минава през някакъ друг сървър и така докато стигне до сървъра на abv. След като стигне до там заявката от интернет пакети, примерно е с TTL=100. След това интернет пакетите които сте заявили (като сте искали да отворите страницата abv.bg) се връщат при вас като минават пак през много сървъри и пристигат, примерно с TTL=50. Чак след като пристигнат при вас, ви се отваря страницата abv.bg.
Ако някаде по "пътя" на пакетите тяхната стойност стигне до 0, то те въобще не пристигат при потребителя и съответно страницата не се зарежда.
Естествено това става за секунди и не се забелязва.

Какво е TTL филтър?
- Това е филтър, който:
1). променя стойността на TTL със стойност различна от 1, като може да я увеличава или намаля, т.е. от TTL=50 може да стане примерно 1 или 100 или някаква друга стойност.
2). отхвърля/забранява пакетите с определена/по-голяма/по-малка TTL стойност.

Като пример, ще ви запозная с моята ситуация:
Моя интернет доставчик филтрира изходните пакети от потребителите по default TTL<128(64), т.е ако пратиш заявка с TTL стойност по малка от 128(64), сървъра ги отхвърля.

Защо някои интернет доставчици слагат такива филтри?
- Защото неискат техните потребители да си слагат рутери и да си споделят интернета със съседа примерно.

Какви видове TTL филтри може да срещнете?
- Аз поне съм запознат с 2 вида:
1). TTL=1
2). ТТL<128(64)

Пояснение:
1). При TTL=1, вашия доставчик ви изпраща всички пакети със стойност TTL=1, което значи, че като си сложите рутер, той ги препраща на компютъра ви с TTL=0 и съответно вашия комп ги отхвърля автоматично.
2). При ТТL<128(64), ако си сложите рутер, когато подадете заявка, пакетите се пращат от компютъра ви с TTL=128, след това стигат до рутера и от там се изпращат с TTL=127. При тази ситуация сървъра на доставчика ви, вижда TTL<128 и отхвърля заявката.

Как да заобиколим такива филтри?
1.) TTL=1: Слагате си рутиращо устройство (рутер/компютър) на който можете да смените TTL на изходящите пакети със стойност различна от 1.
1.1.) Update: Под Windows има възможност чрез 2 програмки да смените TTL стойността на входящите пакети със стойност различна от 1, благодарение на което ще можете да заобиколите защитата на вашия доставчик и да си споделите интернета било то с iPhone-a или друго устройство.
2.) TTL<128(64): След като си сложите какъвто и да било рутер, трябва да си смените TTL стойността на изходящите пакети с 1 по-голяма от стойността по подразбиране (default TTL).

Пояснение: относно TTL<128(64)
При Windows от 128 трябва да промените стойността на 129.
При UNIX/BSD (Mac, Linux ....) от 64 трябва да се промени на 65.

Как да сменим TTL стойността на iPhone?
Ето го и момента в който ще ви обясня как става това.

I-начин:
1. Отваряте Mobile Terminal
2. Логвате се като root
3. Пишете следната команда: sysctl -b -w net.inet.ip.ttl=X
Където X е TTL стойността която искате да зададете. (в моята ситуация: 65)

Проблеми: След рестартиране на iPhone, ТТL стойността отново се връща на 64.
Предимство: Командата може да се използва само за тестване.
Решение: Ако искате TTL стойността да не се променя след рестартиране използвайте II-начин.

II-начин:
1. Отивате в /etc чрез любимия ви начин. (iFile, SSH, Mobile Terminal, ...)
2. Създавате нов файл с име sysctl.conf
3. Във файла пишете net.inet.ip.ttl=X
Където X е TTL стойността която искате да зададете. (в моята ситуация: 65)
4. Задавате характеристики на файла както следва:
Ownership:
Owner: root
Group: wheel

Access Permissions:
User: Read, Write
Group: Read
World: Read

Това може да стане много лесно през iFile.
Другия начин е през Mobile Terminal или SSH както следва:
chown root:wheel /etc/sysctl.conf
chmod 0644 /etc/sysctl.conf

За да разберете дали сте го направили правилно напишете: ls -la /etc
характеристиките пред файла трябва да са: -rw-r--r-- 1 root wheel

5. Рестартирайте iPhone-a.

III-начин
Ако някой го мързи да си прави файла, може да го дръпне от някой от линковете по-долу и да си го сложи директно на устройството в папка /etc:
http://dox.bg/files/dw?a=ba380426d0
http://mtmcoolbg.hit.bg/sysctl.zip

Бележки:
Съжалявам, че съм писал толкова много. Надявам се да съм бил полезен на някои.
I-начин и II-начин са тествани върху iPhone 3GS 3.1.2 - Работят!
Това ръководство би трябвало да работи и на iPodTouch. Не е тествано.
Това ръководство е тествано и работи върху Mac OS X 10.5! За 10.4 и 10.6 не е тествано.
Това ръководство по никакъв начин не влияе на вашата интернет скорост.
Споделяйте вашите мнения и впечатления относно нещата написани по-горе.
Ако някой има какво да допълни или да ме поправи с нещо, бъдете свободни в изказванията си!


Update:
Как да сменим TTL=1 стойността под Windows?

Чрез няколко прости стъпки, ще можете да промените TTL стойността на входящите IP пакети под Windows, така че тя да бъде различна от 1.

1. За целта ще са ви нужни 2 програмки:

- WinpkFilter
Източник
mirror 1
mirror 2

- ATTLFilter
Източник
mirror 1
mirror 2

2. Инсталирайте WinpkFilter

Важно!!!
За потребителите на 64-битов Windows Vista/7, за да работи тази програма е необходимо да изключите проверката за дигитални подписи на driver-ите.
Това може да стане, като рестартирате компютъра си и точно преди да boot-не Windows-a да натиснете F8 и да изберете опцията Disable Driver Signature Enforcement



Забележка:
За Windows Vista/7, стартирайте програмката като Administrator, чрез натискане на дясното копче върху файла, изберете Run As Administrator.

Изображение

Ако по време на инсталацията ви излезе следното съобщение, изберете Install this driver software anyway.

Изображение

3. Копирайте ATTLFilter.exe в:
- за Windows x86 (32-bit) C:\Program Files\WinpkFilter\bin\i386
- за Windows x64 (64-bit) C:\Program Files\WinpkFilter\bin\amd64

4. Стартирайте ATTLFilter.exe от съответната директория в която сте го копирали от предната стъпка.

5. От бутона Settings, можете да зададете стойностите на TTL филтъра, като в първото поле трябва да зададете цяло число, което ще се сравнява с TTL стойността на входящите пакети. Ако TTL стойността е по-малка или равна на зададената в първото поле, то TTL стойността ще бъде променена с тази която трябва да въведете във второто поле.

По подразбиране настройките са следните: Ако входящите пакети имат TTL по-малък или равен на 1, то тяхната TTL стойност ще бъде променена на 5.
Тези настройки са напълно достатъчни да се заобиколи TTL=1 защитата на вашия доставчик.

След като приключите с настройките, натиснете Save.

Изображение

6. От списъка с мрежови устройства изберете това устройство, което е свързано директно с интернет.
След това натиснете бутона Enable.

Изображение

Накрая, оставете програмката да работи и се радвайте на възможността да споделите интернета си с каквото устройство поискате.

_________________
iPhone 3GS 16GB White - Official Unlocked from O2(UK) - iBoot 359.3 - iOS 6.1.6 - Drowned
iPhone 4S 16GB White - Factory Unlocked - iOS 8.1.3
iPad Air 2 64GB + Cell Space Gray - iOS 8.1.3
------------------------------------------
Полезни ръководства за iPhone
Смяна на TTL стойността на IP пакетите


Последна промяна MtMCooLBG на 24 Фев 2011, 14:38, променена общо 5 пъти

 Профил Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 13 Ное 2009, 10:59 

Регистриран на:
06 Яну 2009, 19:31
Мнения: 32
Нищо не си споменал за ефекта,който си постигнал при промяна на TTL стойностите.Нещо промени ли се в интернет скороста при теб?Някои от мобилните оператори налага ли подобни TTL ограничения?А съм сигурен че ще е доста интересно и полезно за потребителите,особено за тези които са по-незапознати и притеснени да направят такова нещо.Аз лично мисля веднага да се захвана и да го направя с телефона си.Темата и обясненията ти са перфектни и въобще не смятам,че са отегчителни и дълги.Поздравления че си се сетил.


 Профил Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 13 Ное 2009, 21:43 
Аватар

Регистриран на:
03 Юли 2009, 13:09
Мнения: 323
Местоположение: Пловдив
То от многото писане може да не се забелязва каде съм споменал зашо ми е необходимо на мене това.

Цитат:
Като пример, ще ви запозная с моята ситуация:
Моя интернет доставчик филтрира изходните пакети от потребителите по default TTL<128(64), т.е ако пратиш заявка с TTL стойност по малка от 128(64), сървъра ги отхвърля.


Това означава, че като си сложа рутер и се вържа към рутера през iPhone-a, компютъра или друго устройство, нямам интернет.
Причината е, че доставчика блокира пакети с TTL по-малко от 128(64) [].
В този случай, като се опиташ да отвориш някоя страница, компа ти праща пакетите към рутера със стойност 128(64), след това рутера ги праща към доставчика със стойност 127(63) и доставчика ги блокира, и заради това се получава така, че нямаш интернет.

Идеята е да се направи така, че доставчика да получава пакети със стойност 128(64) или по голяма.
Това става чрез горе описания начин, който накратко прави така, че Компа(IPhone-a) да праща пакетите към рутера с TTL=129(65) и рутера да ги праща с TTL=128(64) и следователно да имаш интернет.

Това по никакъв начин не влияе на скоростта на интернета и на каквото и да било друго.
Това е просто начин за заобикаляне на защитата на доставчика от рутери.

_________________
iPhone 3GS 16GB White - Official Unlocked from O2(UK) - iBoot 359.3 - iOS 6.1.6 - Drowned
iPhone 4S 16GB White - Factory Unlocked - iOS 8.1.3
iPad Air 2 64GB + Cell Space Gray - iOS 8.1.3
------------------------------------------
Полезни ръководства за iPhone
Смяна на TTL стойността на IP пакетите


 Профил Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 14 Ное 2009, 01:07 
Аватар

Регистриран на:
30 Юли 2008, 00:30
Мнения: 92
Местоположение: Бургас
Доставчика ми ползва защита по изходящ TTL, входящ TTL=1, както и защита по МАС адрес поне от 3 години. Избягването на подобна защита е елементарна с рутър, поддържащ линукс фирмуер, като Tomato или dd-wrt. Рутърите, които ползвам са Linksys WRT54GL и Asus WL500G Premium v2. Командите се въвеждат в самият рутър, като по този начин не се налага да правите подобни хватки с телефона си. Е, началото не беше лесно :)
http://wrt54gl.hit.bg

_________________
I HAVE THE BODY OF A GOD!!!
(Unfortunately it's Buddah)


 Профил WWW Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 14 Ное 2009, 01:45 
Аватар

Регистриран на:
03 Юли 2009, 13:09
Мнения: 323
Местоположение: Пловдив
Така е. Това което исках да кажа, че ако не те филтрират по TTL=1, а по TTL=128(64), не е нужно да си хабиш парите за специален рутер. ;)
При TTL=1, няма как да се заобиколи защитата по този начин, освен ако не ползваш компютър за рутер.

_________________
iPhone 3GS 16GB White - Official Unlocked from O2(UK) - iBoot 359.3 - iOS 6.1.6 - Drowned
iPhone 4S 16GB White - Factory Unlocked - iOS 8.1.3
iPad Air 2 64GB + Cell Space Gray - iOS 8.1.3
------------------------------------------
Полезни ръководства за iPhone
Смяна на TTL стойността на IP пакетите


 Профил Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 14 Ное 2009, 19:48 
Аватар

Регистриран на:
24 Фев 2008, 00:26
Мнения: 145
Местоположение: София , Русе
MtMCooLBG написа:
...При TTL=1, няма как да се заобиколи защитата по този начин, освен ако не ползваш компютър за рутер.


да бе да - я почети малко повече.
От повече от 30 години се занимавам с мрежи, рутери, маршрутизатори и пр. - не ми говори глупости моля те.
Или според теб трябва да си наема центъра на Кейп Канаверал за това което говориш ?

_________________

iPad Pro 9.7 - 3G 32G 10.3.1 ; 5S 10.3.1


 Профил Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 14 Ное 2009, 20:33 
Аватар

Регистриран на:
03 Юли 2009, 13:09
Мнения: 323
Местоположение: Пловдив
Ем добре, тогава, ако има начин, да накараш компа ти да приема пакети с TTL=0, сподели го.

Евентуално, ако не си ме разбрал, исках да кажа, че чрез ръководството което съм написал, неможе да се заобиколи TTL=1. ;)

_________________
iPhone 3GS 16GB White - Official Unlocked from O2(UK) - iBoot 359.3 - iOS 6.1.6 - Drowned
iPhone 4S 16GB White - Factory Unlocked - iOS 8.1.3
iPad Air 2 64GB + Cell Space Gray - iOS 8.1.3
------------------------------------------
Полезни ръководства за iPhone
Смяна на TTL стойността на IP пакетите


 Профил Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 20 Яну 2011, 19:16 
Аватар

Регистриран на:
03 Юли 2009, 13:09
Мнения: 323
Местоположение: Пловдив
Добавено е упътване как да заобиколим TTL=1 защитата под Windows.

_________________
iPhone 3GS 16GB White - Official Unlocked from O2(UK) - iBoot 359.3 - iOS 6.1.6 - Drowned
iPhone 4S 16GB White - Factory Unlocked - iOS 8.1.3
iPad Air 2 64GB + Cell Space Gray - iOS 8.1.3
------------------------------------------
Полезни ръководства за iPhone
Смяна на TTL стойността на IP пакетите


 Профил Изпрати  
 
 Заглавие: Re: HowTo: Смяна на TTL стойността на IP пакетите.
МнениеПубликувано на: 07 Фев 2011, 16:42 
Аватар

Регистриран на:
30 Юли 2008, 00:30
Мнения: 92
Местоположение: Бургас
Виждам, че темата има развитие. За защитата TTL=1 не е необходим компютър, който да играе ролята на рутър. Заобикалянето на защитата става и с рутър, например като двата, които съм споменал в предния си пост. В същност става с всеки рутър, който поддържа фирмуери на Tomato или dd-wrt. Фирмуерът на Tomato си има вградена функция, с която да избереш колко да е входящия TTL в диапазона от -5 до +5. Тази функция съществува от години. С фирмуера на dd-wrt, същата функция става с въвеждането на 1 ред в секцията команди - файъруол. През годините съм настройвал десетки рутъри с Tomato и dd-wrt. Работят си и до ден днешен.

_________________
I HAVE THE BODY OF A GOD!!!
(Unfortunately it's Buddah)


 Профил WWW Изпрати  
 
Покажи мненията от миналия:  Сортирай по  
Напиши нова тема Отговори на тема  [ 9 мнения ] 

Часовете са според зоната UTC + 2 часа [ DST ]


Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения

Търсене:
Иди на: