TPROXY пакетыг сокет хүртэл хянах
Хүлээн авах сокет, пакетын тэмдэг болон локал бодлогын маршрутыг ил тод проксийн нэг хүргэх зам гэж шалгана.
Програм юу ч хүлээж авахгүй байхад TPROXY тоолуур өсөж болно. Дүрэм таарсан ч локал хүргэлт нь бодлогын маршрутлалт болон тохирох хүлээн авах сокетоос хамаарсаар байна.
Linux TPROXY нь DNAT шиг очих хаягийг дахин бичихгүйгээр урсгалыг барьж чадна. Тиймээс локал бус очих хаяг руу илгээсэн пакетууд тохирох локал сокет хүрэх ёстой.
Хүргэх замыг дагана уу
- Урсгал нь төлөвлөсөн интерфэйс, хаягийн бүлгээр барих хост хүрнэ.
- Барих дүрэм болон пакетын тэмдэг нь локал хүргэлтийн бодлогыг тодорхойлно.
- Тохирох бодлогын дүрэм пакетуудыг локалаар хүргэх маршрутыг сонгоно.
- Прокси шаардлагатай сокетын сонголттой дэмжигдсэн ил тод сонсогчийг ашиглана.
Цөмийн IPv4 жишээ нь IP_TRANSPARENT-д програмын дэмжлэг шаарддаг. Ижил порт дээрх энгийн сонсогч эсвэл глобал локал бус холболтын тохиргоо тэр дэмжлэгийг нотлохгүй.
| Ажиглалт | Дараагийн шалгалт |
|---|---|
| Холбогдох орж ирж буй пакет байхгүй | Урсгалын зам ба оролтын интерфэйс |
| Пакетууд ирдэг; барих тоолуур хөдөлдөггүй | Хаягийн бүлэг, гинжин хэлхээ, тохирлын нөхцөл |
| Дүрэм тохирч байна; локал хүргэлт бүтэлгүйтнэ | Тэмдэг ба бодлогын маршрутын сонголт |
| Сокет сонсож байна; програм юу ч хардаггүй | Ил тод сокетын чадвар ба сонсогчийн эзэмшигч |
| Хүсэлт эхэлнэ; дараагийн хариултууд бүтэлгүйтнэ | Тогтоосон сокетын тохирол ба буцах маршрутууд |
Ажиглалт бүрт ачаалсан тохиргоо болон сүлжээний нэрийн орон зайг хамт хадгална уу. Дараагийн дүрэм тэмдгийг дарж бичих эсвэл өөр маршрут сонгож болно. Сонсогч контейнерт ажиллаж байхад барилт хост дээр болвол хостны хүчинтэй локал маршрут тэр контейнерт автоматаар хүргэхгүй.
Дараагийн пакетуудыг тооцно уу
Цөмийн жишээ нь сокетын тохирол болон ил тод сокетуудад хамаарах пакетыг тэмдэглэдэг DIVERT замыг агуулдаг. Үүнийг орхивол эхний барилт амжилттай болсон ч дараагийн урсгал өөр замд үлдэж болно.
Програмын дэмждэг ил тод горим болон хаягийн бүлэг бүрийн холбогдох цөмийн баримт бичгийг ашиглана уу. IPv4 локал маршрутын команд IPv6-г тохируулахгүй бөгөөд нэг бүлгийн дэмжлэг нөгөөгийн сокетын зан төлөвийг нотлохгүй.
TPROXY мөн SOCKS хэлэлцээрийг үүсгэдэггүй. Ил тодоос SOCKS руу шилжих бүрэлдэхүүн хэсэг одоо ч очих хаягийг олж, дээд урсгалтайгаа хэлэлцээр хийх шаардлагатай.
REDIRECT-ээс шилжих
Одоо байгаа програм анхны очих хаягийг хэрхэн олж авдгийг тэмдэглэнэ үү. REDIRECT очих хаягийг өөрчилж, тохирох сэргээх механизмд тулгуурладаг; TPROXY-д өөрийн ил тод сокет болон маршрутлалтын зохион байгуулалт хэрэгтэй. Програм болон эх хаягийн бодлогод тохируулан сонгоно уу.
Барих горимыг солихоос өмнө тоолууруудыг сонгосон маршрут, сокетын чадвар, програмын логтой холбоно уу. Шаардлагатай хэрэгслийг нийлүүлдэг түгээлт дээр цөмийг дахин компиляци хийхээс илүү дутуу хүргэх алхам нь илүү сайн эхлэл юм.