Squid яагаад санаанд оромгүй порт дээр UDP сокеттой байдаг вэ
Squid-ын DNS болон peer-cache UDP сокетуудыг клиентүүд форвард прокси болгон ашигладаг TCP сонсогчоос ялгаарай.
Squid-д хамаарах танихгүй UDP порт нь өөрөө өөр нэг нийтийн HTTP прокси биш юм. Клиентүүд энгийн HTTP прокси хандалтад тохируулсан TCP сонсогчийг ашигладаг; Squid нь DNS болон кэш-хамтрагчтай харилцах зориулалтаар ч сокет нээдэг.
Нэмэлт сокетыг тодорхойлохын тулд дараахь зүйлийг тэмдэглэ:
- Энэ нь TCP эсвэл UDP эсэх, холбогдсон хаяг болон харагдах алсын төгсгөлийн цэг.
- Тухайн инстансын үйлчилж буй сонсогч, DNS, ICP, HTCP тохиргоо.
- Эдгээр тохиргоогоор идэвхжих функцэд шаардагдах сүлжээний хүртээмж.
Squid-ын UDP хаягийн лавлагаа нь DNS, ICP, HTCP модулиудыг тодорхой хамардаг. Тэдний зан төлөвийг http_port-аас дүгнэх боломжгүй бөгөөд зөвхөн өндөр портын дугаар функцыг тодорхойлохгүй.
Тэр UDP төгсгөлийн цэгийг програмын HTTP прокси талбарт оруулахгүй, зүгээр л сокетын жагсаалтад харагдсан гэж бүх клиентэд нээхгүй байх хэрэгтэй. Харин Squid-ын бодитоор ашигладаг DNS замыг хаах нь дараагийн очих газрын шийдлийг эвдэж болно. Тодорхойлсон функцын галт хананы дүрмийг өөрчил: шийдвэрлэгчийн асуулга сокет, кэш-хамтрагчийн порт, клиент сонсогч өөр өөр үүрэгтэй.