Maaaring tumaas ang counter ng TPROXY habang walang natatanggap ang aplikasyon. Tumugma ang tuntunin, ngunit nakadepende pa rin ang lokal na paghahatid sa policy routing at sa katugmang tumatanggap na socket.

Maaaring harangin ng TPROXY sa Linux ang trapiko nang hindi nire-rewrite ang destinasyon tulad ng DNAT. Kaya ang mga packet na nakadirekta sa hindi lokal na destinasyon ay dapat umabot sa angkop na lokal na socket.

Sundin ang daan ng paghahatid

  1. Umaabot ang trapiko sa host ng pagharang sa nilalayong interface at pamilya ng address.
  2. Tinutukoy ng tuntunin ng pagharang at marka ng packet ang patakaran ng lokal na paghahatid.
  3. Pumipili ang katugmang tuntunin ng patakaran ng rutang naghahatid ng mga packet nang lokal.
  4. Gumagamit ang proxy ng suportadong transparent na listener na may kailangang opsyon ng socket.

Ang halimbawang IPv4 ng kernel ay nangangailangan ng suporta ng aplikasyon para sa IP_TRANSPARENT. Ang ordinaryong listener sa parehong port, o pandaigdigang hindi lokal na bind setting, ay hindi nagpapatunay ng suportang iyon.

ObserbasyonSusunod na pagsusuri
Walang kaugnay na papasok na packetDaan ng trapiko at input interface
Dumarating ang mga packet; hindi gumagalaw ang counter ng pagharangPamilya ng address, chain at mga kondisyon ng pagtutugma
Tumutugma ang tuntunin; nabibigo ang lokal na paghahatidMarka at pagpili ng ruta ng patakaran
Nakikinig ang socket; walang nakikita ang aplikasyonKakayahan ng transparent na socket at may-ari ng listener
Nagsisimula ang kahilingan; nabibigo ang mga sumunod na tugonPagtutugma ng naitatag na socket at mga ruta ng pagbabalik

Itabi ang na-load na configuration at network namespace kasama ng bawat obserbasyon. Maaaring i-overwrite ng susunod na tuntunin ang isang marka o pumili ng ibang ruta. Kung nangyayari ang pagharang sa host habang tumatakbo ang listener sa isang container, hindi awtomatikong naghahatid ang valid na lokal na ruta ng host papasok sa container na iyon.

Isaalang-alang ang mga susunod na packet

Kasama sa halimbawa ng kernel ang pagtutugma ng socket at isang daan ng DIVERT na nagmamarka ng mga packet ng transparent na socket. Kapag iniwan ito, maaaring manatili ang susunod na trapiko sa ibang daan kahit nagtagumpay ang unang pagharang.

Gamitin ang suportadong transparent na mode ng aplikasyon at ang katugmang dokumentasyon ng kernel para sa bawat pamilya ng address. Hindi kinokonfigura ng IPv4 local-route command ang IPv6, at hindi nagpapatunay ang suporta sa isang pamilya ng pag-uugali ng socket sa isa pa.

Hindi rin gumagawa ng negosasyon ng SOCKS ang TPROXY. Kailangan pa rin ng bahaging mula transparent patungong SOCKS na tuklasin ang destinasyon at makipagnegosasyon sa upstream nito.

Paglipat mula sa REDIRECT

Itala kung paano nakukuha ng umiiral na aplikasyon ang orihinal na destinasyon. Binabago ng REDIRECT ang destinasyon at umaasa sa angkop na mekanismo ng pagbawi; kailangan ng TPROXY ang sarili nitong transparent na socket at kaayusan ng routing. Pumili ayon sa aplikasyon at patakaran ng source address.

Ipares ang mga counter sa piniling ruta, kakayahan ng socket at log ng aplikasyon bago baguhin ang mode ng pagharang. Sa isang distribusyong nagbibigay ng mga kinakailangang pasilidad, ang nawawalang hakbang ng paghahatid ay mas mabuting simula kaysa sa muling pag-compile ng kernel.

Kaugnay na mga artikulo