Squid యొక్క systemd సేవను ఉన్న egress namespace కు కలపండి
ప్రారంభించే ముందు NetworkNamespacePath సెట్ చేయండి మరియు ఆ namespace కు అవసరమైనప్పుడు ప్రత్యేక resolver-file bind ఇవ్వండి.
/run/netns/proxy-egress లో ఇప్పటికే ఉన్న namespace కోసం, దీన్ని ఉన్న Squid సేవ drop-in లో విలీనం చేయండి:
[Service]
NetworkNamespacePath=/run/netns/proxy-egressnamespace సృష్టించే భాగం తర్వాత సేవను ఉంచండి. ఈ సెట్టింగ్ namespace ను గానీ దాని ఇంటర్ఫేస్లు, చిరునామాలు లేదా మార్గాలను గానీ సృష్టించదు.
వినే మరియు బయటకు వెళ్లే రెండు సాకెట్లు ఇప్పుడు అక్కడ ఉన్నాయి. క్లయింట్లకు ఆ listener కి మార్గం మరియు దాని నిల్వ చేసిన access policy అవసరం; host loopback దానంతట అదే namespace loopback కాదు.
Resolver ఫైళ్లకు ప్రత్యేక శ్రద్ధ అవసరం. ip netns exec వలె కాకుండా, ఈ నెట్వర్క్ సెట్టింగ్ /etc/netns/NAME ఫైళ్లను వాటి సాధారణ మార్గాలపై mount చేయదు. డిప్లాయ్మెంట్కు దాని namespace యొక్క resolver ఫైల్ అవసరమైనప్పుడు:
BindReadOnlyPaths=/etc/netns/proxy-egress/resolv.conf:/etc/resolv.confఆ namespace నుండి చేరుకోగల resolver చిరునామాలను ఉపయోగించి, వాటిని ఉన్న sandbox/ఫైల్సిస్టమ్ నియమాలతో విలీనం చేయండి. Squid యొక్క బయటకు వెళ్లే మూల చిరునామాను మాత్రమే bind చేయడం ప్రక్రియను ఈ సందర్భంలో ఉంచదు.