VPS-ஐ Tailscale exit node-ஆக மாற்றுவது எப்படி?
உங்கள் VPS-ஐ Tailscale exit node-ஆக மாற்ற IP forwarding மற்றும் route approval முறைகளை விரிவாக அறியுங்கள். பாதுகாப்பான இணைய போக்குவரத்திற்கு இதை எவ்வாறு அமைக்கலாம் என்பதைப் பாருங்கள்.
Tailscale exit node-ன் செயல்பாடுகள்
Tailscale exit node என்பது உங்கள் tailnet-ல் உள்ள மற்ற சாதனங்களின் அனைத்து இணைய போக்குவரத்தையும் (internet traffic) கையாளும் ஒரு இயந்திரமாகும். ஒரு VPS (virtual private server) இதற்குச் சிறந்த தேர்வாகும், ஏனெனில் இது நிலையான பொது முகவரியைக் (fixed public address) கொண்டுள்ளது மற்றும் எப்போதும் இயங்கிக்கொண்டிருக்கும். இதை அமைப்பதற்கு ஐந்து படிகள் உள்ளன: server-ல் Tailscale-ஐ நிறுவுதல், exit node-ஐ விளம்பரப்படுத்துதல் (advertise), IP forwarding-ஐ செயல்படுத்துதல், admin console-ல் route-ஐ அங்கீகரித்தல், இறுதியாக உங்கள் laptop-ல் அந்த node-ஐத் தேர்ந்தெடுத்தல். நான்காவது படி ஒரு இணையப் பக்கத்தில் உள்ள toggle பொத்தானைப் பயன்படுத்துவதாகும், இது கட்டளை (command) அல்ல; பெரும்பாலான பயனர்கள் இங்குதான் தடுமாறுகிறார்கள்.
இது செயல்படத் தொடங்கியதும், உங்கள் laptop ஒவ்வொரு packet-ஐயும் குறியாக்கம் (encrypt) செய்து VPS-க்கு அனுப்பும். VPS ஆனது source NAT (network address translation)-ஐப் பயன்படுத்தி, தனது சொந்த பொது IP முகவரியுடன் அந்த packet-ஐ இணையத்திற்கு அனுப்பும். இணையதளங்கள் VPS-ஐ மட்டுமே பார்க்கும். நீங்கள் பயன்படுத்தும் café Wi-Fi, VPS-க்குச் செல்லும் ஒரு குறியாக்கப்பட்ட UDP ஓட்டத்தை மட்டுமே காணும், மற்ற எதையும் பார்க்க முடியாது.
Tailscale என்பது தரவுப் பாதைக்கு (data path) WireGuard-ஐயும், சாவிகளைப் (keys) பகிர்ந்தளிக்கவும் NAT மூலம் இரண்டு இயந்திரங்களை ஒன்றோடொன்று இணைக்கவும் உதவும் ஒரு ஒருங்கிணைப்பு server-ஐயும் (coordination server) பயன்படுத்துகிறது. இந்த ஒருங்கிணைப்பு server இருப்பதால்தான், கீழே எங்கும் சாவிகளை நகலெடுக்க வேண்டிய அவசியம் இல்லை. இதன் சாதக பாதகங்களை விரிவாக அறிய, Tailscale மற்றும் சாதாரண WireGuard ஒப்பீடு என்பதைப் படிக்கவும். ஒருவேளை நீங்கள் tunnel-ன் அனைத்துப் பகுதிகளையும் நீங்களே நிர்வகிக்க விரும்பினால், அதற்குப் பதிலாக உங்கள் VPS-ல் சாதாரண WireGuard VPN-ஐ நீங்களே host செய்யவும்.
கீழே உள்ள படிகள் உங்கள் laptop-ல் ஏற்கனவே Tailscale இயங்குகிறது என்றும், இரண்டு இயந்திரங்களும் ஒரே tailnet-ல் உள்நுழைந்துள்ளன என்றும் கருதுகின்றன. Tailnet என்பது உங்கள் தனிப்பட்ட Tailscale பிணையமாகும், இதில் உள்ள ஒவ்வொரு சாதனமும் 100.64.0.0/10-க்குள் ஒரு நிலையான முகவரியைப் பெறுகிறது.
உங்கள் VPS-ல் Tailscale-ஐ நிறுவுதல்
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale upஇந்த நிறுவல் script உங்கள் distribution-க்கு ஏற்ற package repository-ஐத் தேர்ந்தெடுத்து tailscaled daemon-ஐ நிறுவுகிறது. அதன் பிறகு tailscale up ஒரு authentication URL-ஐக் காட்டும். அதை browser-ல் திறந்து, உங்கள் laptop-ல் பயன்படுத்தும் அதே கணக்கின் மூலம் உள்நுழையவும். ஏனெனில், வேறொரு tailnet-ல் உள்ள VPS உங்கள் laptop-க்குச் சேவை வழங்க முடியாது.
tailscale status
tailscale ip -4tailscale status இப்போது இரண்டு இயந்திரங்களையும் பட்டியலிட வேண்டும். tailscale ip -4 அந்த VPS-ன் tailnet முகவரியைக் காட்டும்; இதையே நீங்கள் பின்னர் client-க்கு வழங்க வேண்டும்.
Tunnel-ஐ உருவாக்க Tailscale-க்கு ஒரு TUN device தேவை. KVM VPS-ல் இந்த device ஏற்கனவே இருக்கும். Host kernel-ஐப் பகிரும் container virtualisation திட்டங்களில், /dev/net/tun சில நேரங்களில் விடுபட்டிருக்கலாம்; அப்போது tailscaled-ஆல் tailscale0 interface-ஐ உருவாக்க முடியாது. மேலும் தொடரும் முன் ls -l /dev/net/tun-ஐ இயக்கவும்.
IP forwarding-ஐ செயல்படுத்துதல், இல்லையெனில் VPS ஒவ்வொரு packet-ஐயும் நிராகரிக்கும்
ஒரு Linux machine தனக்கு அனுப்பப்படாத எந்தவொரு packet-ஐயும் நிராகரிக்கும், ஏனெனில் net.ipv4.ip_forward இயல்பாகவே 0 என இருக்கும். Exit node உங்கள் traffic-ஐ ஏற்கும், decrypt செய்யும், ஆனால் அதைத் தூக்கி எறிந்துவிடும். இந்த அமைப்பை ஒரு கோப்பில் எழுதினால் மட்டுமே reboot-க்குப் பிறகும் அது நிலைத்திருக்கும்.
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conftee -a கோப்பின் இறுதியில் சேர்க்கும் (append), எனவே இந்த வரிகளை இரண்டாவது முறை இயக்கினால் இரண்டு அமைப்புகளும் இருமுறை எழுதப்படும். இதன் விளைவாகவும் அது வேலை செய்யும், ஆனால் cat /etc/sysctl.d/99-tailscale.conf பார்ப்பதற்கு விசித்திரமாக இருக்கும். கோப்பை நம்புவதற்குப் பதிலாக, தற்போதைய நேரடி மதிப்பை உறுதிப்படுத்தவும்:
sysctl net.ipv4.ip_forwardஇது net.ipv4.ip_forward = 1 என்று காட்ட வேண்டும். இதைத் தவிர்த்துவிட்டு tailscale up --advertise-exit-node-ஐப் பயன்படுத்தினால், client உங்களுக்கு இவ்வாறு தெரிவிக்கும்:
Warning: IP forwarding is disabled, subnet routing/exit nodes will not work.tailscale set --advertise-exit-node அந்தச் சோதனையைச் செய்யாது, எனவே set-லிருந்து எந்தப் பதிலும் வராதது forwarding செயல்பாட்டில் இருப்பதற்கான ஆதாரம் அல்ல. sysctl மதிப்பை நீங்களே படித்துப் பார்க்கவும்.
நீங்கள் கையால் masquerade விதியை (rule) எழுத வேண்டிய அவசியமில்லை. tailscaled தனது சொந்த firewall chains-களை நிறுவுகிறது, அவை ts-input, ts-forward மற்றும் ts-postrouting என அழைக்கப்படுகின்றன. Exit node traffic-க்கான NAT விதி ts-postrouting-ல் இருக்கும். அவற்றை sudo iptables-save | grep ts- மூலமாகவோ அல்லது nftables பயன்படுத்தும் கணினிகளில் sudo nft list ruleset மூலமாகவோ பார்க்கலாம்.
VPS-ஐ exit node-ஆக அறிவித்தல்
sudo tailscale set --advertise-exit-nodetailscale set ஒரு விருப்பத்தை (preference) மட்டும் மாற்றுகிறது, மற்றவற்றை அப்படியே விட்டுவிடுகிறது. tailscale up --advertise-exit-node node-ஐயும் அறிவிக்கிறது, ஆனால் இதற்கு ஒரு பக்கவிளைவு உண்டு: up அதன் command line-ல் உள்ள flags-ஐ முழுமையான non-default அமைப்புகளாகக் கருதுகிறது. எனவே, பிற்காலத்தில் வெறும் sudo tailscale up கட்டளையை இயக்கினால் அது இயங்க மறுத்து, பின்வரும் செய்தியைக் காட்டும்:
changing settings via 'tailscale up' requires mentioning all
non-default flags. To proceed, either re-run your command with --reset or
use the command below to explicitly mention the current value of
all non-default settings:தொடர்ச்சியான மாற்றங்களுக்கு set-ஐப் பயன்படுத்தவும்; அப்போது நீங்கள் அந்தச் செய்தியை எதிர்கொள்ள வேண்டியிருக்காது.
அறிவித்தல் என்பது ஒரு சலுகை மட்டுமே. VPS இப்போது தான் ஒரு exit node-ஆகச் செயல்படத் தயார் என்பதை coordination server-க்குத் தெரிவிக்கிறது. எந்தவொரு client-ம் இப்போதைக்கு இதைப் பயன்படுத்த முடியாது.
Tailscale admin console-ல் exit node-ஐ அங்கீகரித்தல்
இந்த படிநிலைக்கு எந்த கட்டளையும் தேவையில்லை. Machines page in the admin console-ஐத் திறந்து, உங்கள் VPS-ஐக் கண்டறியவும். அதன் வரிசையின் இறுதியில் உள்ள மூன்று புள்ளி மெனுவை அழுத்தி, Edit route settings என்பதைத் தேர்ந்தெடுக்கவும். பின் Use as exit node என்பதை ஆன் செய்யவும்.
இந்த toggle ஆன் செய்யப்படாத வரை, control plane இந்த வசதியை யாருக்கும் வழங்காது. உங்கள் laptop-ல் tailscale exit-node list கட்டளையை இயக்கினால் எந்த முடிவும் காட்டாது, உங்கள் traffic வழக்கமான பாதையிலேயே செல்லும். எந்த இயந்திரத்திலும் பிழைச் செய்தி (error message) காட்டப்படாது. Exit node பட்டியலிலேயே தோன்றாது.
Tailnet policy file-ல் ஒரு entry சேர்ப்பதன் மூலம் exit node-களை தானாகவே அங்கீகரிக்க முடியும்:
"autoApprovers": {
"exitNode": ["tag:exit"],
}--advertise-tags=tag:exit கட்டளையுடன் கொண்டுவரப்படும் ஒரு சாதனம் தானாகவே அங்கீகரிக்கப்படும். இதற்கு, அதே policy file-ல் tagOwners பிரிவின் கீழ் tag:exit வரையறுக்கப்பட்டிருக்க வேண்டும். Tagging செய்வதன் மூலம் உரிமையாளர் மாறுகிறார்: ஒரு tagged சாதனம் உங்கள் பயனர் கணக்கிற்குப் பதிலாக tailnet-க்கு சொந்தமானதாகிறது, மேலும் அதற்குப் பொருந்தும் access rules-களும் அதற்கேற்ப மாறும். ஒரு தனி VPS-க்கு, toggle முறையே எளிதானது.
உங்கள் லேப்டாப்பில் exit node-ஐத் தேர்வு செய்தல்
Linux client-ல்:
tailscale exit-node list
sudo tailscale set --exit-node=vps.your-tailnet.ts.netexit-node list உங்கள் tailnet-ல் அங்கீகரிக்கப்பட்ட exit node-களையும் அவற்றின் முகவரிகளையும் காட்டும். பட்டியல் காலியாக இருந்தால், அங்கீகாரப் படிநிலை (approval step) நடைபெறவில்லை என்று அர்த்தம். macOS, Windows, iOS மற்றும் Android ஆகியவற்றில், இதே தேர்வு Tailscale app-ல் உள்ள Exit Node மெனுவில் இருக்கும்.
Client-லிருந்து சரிபார்க்கவும், server-லிருந்து அல்ல:
curl -4 https://ifconfig.meExit node-ஐத் தேர்வு செய்வதற்கு முன்பும் பின்பும் இதை ஒருமுறை இயக்கவும். உங்கள் முகவரி, உள்ளூர் முகவரியிலிருந்து VPS-ன் public IP-க்கு மாறியிருக்க வேண்டும். Exit node-ஐப் பயன்படுத்துவதை நிறுத்த:
sudo tailscale set --exit-node=முதல் நாளில் கவனிக்க வேண்டிய மற்றொரு flag முக்கியமானது. Exit node தேர்வு செய்யப்பட்டிருக்கும்போது, client அனைத்துத் தரவுகளையும் tunnel-க்குள் அனுப்பும். இதில் 192.168.1.50-க்கு அனுப்பப்படும் பாக்கெட்டுகளும் அடங்கும், இதனால் உங்கள் printer மற்றும் network storage ஆகியவை பதிலளிக்காது. உள்ளூர் network-ஐ உள்ளூர் பாதையிலேயே வைத்திருக்க:
sudo tailscale set --exit-node=<name> --exit-node-allow-lan-access=trueExit node இயங்கும்போது உங்கள் DNS ஏன் மாறுகிறது
இயல்பாக, exit node-ஐப் பயன்படுத்தும் ஒரு சாதனம், ஒவ்வொரு domain-க்கும் அந்த exit node-ஐயே அதன் DNS (domain name system) resolver-ஆகப் பயன்படுத்துகிறது. இது உங்கள் tailnet-ல் உள்ள global மற்றும் split DNS nameserver அமைப்புகளை மீறிச் செயல்படும். இந்த நடத்தை வேண்டுமென்றே வடிவமைக்கப்பட்டது. queries உள்ளூர் நெட்வொர்க்கின் resolver-க்குச் சென்றால், உங்கள் traffic தனிப்பட்டதாக இருந்தாலும், நீங்கள் பார்க்கும் ஒவ்வொரு தளத்தின் பெயரையும் அந்த café router-ஆல் பார்க்க முடியும். பெயர்களும் பாக்கெட்டுகளும் ஒரே இடத்திலிருந்துதான் வெளியேற வேண்டும்.
internal resolver-ஐப் பயன்படுத்துபவர்களுக்கு ஒரு சிக்கல் ஏற்படலாம்: exit node இயங்கும்போது, நீங்கள் சார்ந்திருக்கும் tailnet nameserver பயன்படுத்தப்படாமல் போகும். அதை மீண்டும் கொண்டுவர, admin console-ன் DNS பக்கத்தில் அந்த nameserver-க்கு Use with exit node என்பதை enable செய்யவும்.
MagicDNS பெயர்கள் தொடர்ந்து வேலை செய்யும், ஏனெனில் Tailscale client அவற்றை 100.100.100.100-ல் உள்ளூர் அளவில் பதிலளிக்கிறது, exit node-க்குச் செல்வதற்கு முன்பே இது நடக்கும். இதை dig @100.100.100.100 your-vps.your-tailnet.ts.net மூலமாகவோ, அல்லது resolvectl status கொண்ட systemd-resolved client-ல் Tailscale interface அதன் DNS server-ஆக 100.100.100.100-ஐக் காட்டுவதைப் பார்த்தோ உறுதிப்படுத்தலாம்.
நீங்கள் --accept-dns=false மூலம் Tailscale-ன் DNS கையாளுதலை முடக்கினால், client உள்ளூர் நெட்வொர்க்கிலிருந்து பெற்ற resolver-ஐயே வைத்திருக்கும். traffic tunnel செய்யப்படும், ஆனால் queries tunnel செய்யப்படாது. இது கைமுறையாக உருவாக்கப்பட்ட WireGuard tunnels-ல் ஏற்படும் அதே DNS leak ஆகும். உங்களுக்கு மாற்ற வேண்டிய கட்டாயக் காரணம் இல்லையென்றால், --accept-dns-ஐ மாற்ற வேண்டாம்.
Exit node வழியாக IPv6
ஒரு exit node, 0.0.0.0/0 மற்றும் ::/0 ஆகிய இரண்டு default route-களையும் விளம்பரப்படுத்துகிறது. VPS-க்கு இணையத்துடன் இணைக்கப்படும் IPv6 பாதை சரியாகச் செயல்படவில்லை என்றால், IPv6 packets tunnel வழியாக வந்து அங்கேயே நின்றுவிடும். அதை நம்புவதற்கு முன் VPS-ல் சோதிக்கவும்:
ip -6 addr show
curl -6 https://ifconfig.meகோரிக்கை தோல்வியடைந்தால், VPS-க்கு IPv6 upstream இல்லை என்று அர்த்தம். Dual stack இணையதளங்கள் பொதுவாகச் செயல்படும், ஏனெனில் client IPv6-ஐக் கைவிட்டு IPv4 வழியாக மீண்டும் முயற்சிக்கும். இருப்பினும், ஒவ்வொரு தளத்துடனான முதல் இணைப்பின்போதும் இந்த மறுமுயற்சி தாமதத்தை ஏற்படுத்தும். IPv6-மட்டும் கொண்ட தளங்களை அணுக முடியாது.
இதன் மற்றொரு பகுதி forwarding ஆகும். net.ipv6.conf.all.forwarding-ஐ 0-ல் வைத்துக்கொண்டு net.ipv4.ip_forward = 1-ஐப் பயன்படுத்தினால், IPv4 பாதை சரியாகச் செயல்படும், ஆனால் IPv6 ஒரு black hole-ஆக மாறிவிடும். இதை பயனர் "சில தளங்கள் மெதுவாக உள்ளன" என்று உணர்வாரே தவிர, தேடக்கூடிய பிழையாக இருக்காது. இந்த இரண்டு வரிகளும் sysctl கோப்பில் இருக்க வேண்டும்.
VPS-ஆனது subnet route-களையும் advertise செய்ய வேண்டுமா?
Exit node என்பது அனைத்து இணைய traffic-ஐயும் கையாளும். Subnet route என்பது அந்த machine-க்கு பின்னால் உள்ள ஒரு குறிப்பிட்ட private range-ஐ மட்டும் கையாளும். இவை இரண்டும் தனித்தனி வசதிகள் மற்றும் தனித்தனியாக அங்கீகரிக்கப்பட வேண்டியவை; ஒரே machine இரண்டையும் செய்ய முடியும்.
sudo tailscale set --advertise-routes=10.0.0.0/24VPS-ஆனது மற்ற server-களுடன் ஒரு private network-ஐப் பகிர்ந்து கொள்ளும்போது, அந்த server-களை அவற்றின் private முகவரிகள் மூலம் அணுக, subnet-ஐ advertise செய்யவும். இதை Edit route settings panel-ல் உள்ள தனி toggle மூலம் அங்கீகரிக்கவும்.
Range-ஐ கவனமாகத் தேர்ந்தெடுக்கவும். உங்கள் laptop-ன் default route-ஐ விட, advertise செய்யப்படும் route அதிக முன்னுரிமை பெறும். எனவே, VPS-லிருந்து 192.168.1.0/24-ஐ advertise செய்தால், அதே range-ஐப் பயன்படுத்தும் உங்கள் வீட்டு network-ன் முகவரிகளை அது ஆக்கிரமித்துக்கொள்ளும்; இதனால் உங்கள் மேஜையில் உள்ள சாதனங்கள் தொடர்பை இழக்க நேரிடும். உங்கள் வீட்டு router தானாகத் தேர்ந்தெடுத்த range-ஐப் பயன்படுத்தாமல், நீங்களாகத் தேர்ந்தெடுத்த ஒரு range-ஐப் பயன்படுத்தவும்.
UDP GRO forwarding மூலம் exit node-ன் வேகத்தை அதிகரித்தல்
Tailscale 1.54 மற்றும் அதற்குப் பிந்தைய பதிப்புகள், Linux 6.2 அல்லது அதற்குப் பிந்தைய kernel-ல், forwarded traffic-ன் throughput-ஐ அதிகரிக்கும் receive offload வசதியைப் பயன்படுத்தலாம். GRO (generic receive offload) என்பது, incoming packets-ஐ kernel ஒவ்வொன்றாகச் செயலாக்குவதற்கு முன்பே அவற்றை ஒன்றிணைக்கிறது. ஆகஸ்ட் 2026 நிலவரப்படி, இது exit node-ல் கைமுறையாகச் செய்ய வேண்டிய ஒரு அமைப்பாகும்.
sudo apt install -y ethtool
NETDEV=$(ip -o route get 8.8.8.8 | cut -f 5 -d " ")
sudo ethtool -K $NETDEV rx-udp-gro-forwarding on rx-gro-list offip -o route get 8.8.8.8 என்பது இணையத்தை அடையும் உண்மையான interface-ஐக் காட்டுகிறது, எனவே நீங்கள் eth0, ens3 மற்றும் enp1s0 ஆகியவற்றுக்கு இடையே குழப்பமடையத் தேவையில்லை. ethtool -k $NETDEV | grep udp-gro-forwarding மூலம் உறுதிப்படுத்தவும், இது இப்போது on என்று காட்ட வேண்டும்.
Reboot செய்யும்போது இந்த அமைப்பு அழிந்துவிடும். networkd-dispatcher இயங்கும் ஒரு system-ல், இதை automatic ஆக்க:
printf '#!/bin/sh\n\nethtool -K %s rx-udp-gro-forwarding on rx-gro-list off \n' "$(ip -o route get 8.8.8.8 | cut -f 5 -d " ")" | sudo tee /etc/networkd-dispatcher/routable.d/50-tailscale
sudo chmod 755 /etc/networkd-dispatcher/routable.d/50-tailscaleமுதலில் /etc/networkd-dispatcher/routable.d/ உள்ளதா என்று சரிபார்க்கவும். அது இல்லையென்றால், அந்த machine-ல் networkd-dispatcher இயங்கவில்லை என்று அர்த்தம். அத்தகைய சூழலில், boot-ன் போது ethtool வரியை இயக்கும் ஒரு சிறிய systemd unit அதே பணியைச் செய்யும்.
உங்கள் provider-ன் acceptable use policy, exit traffic-க்கு எதைக் குறிக்கிறது
ஒரு client, exit node வழியாக அனுப்பும் ஒவ்வொரு packet-ம் அந்த VPS-ன் public IP address-உடன் வெளியேறும், எனவே அது உங்கள் கணக்கின் செயல்பாடாகவே கருதப்படும். பதிப்புரிமை மீறல் அறிவிப்புகள் (copyright notices) மற்றும் port scan புகார்கள் போன்ற abuse reports உங்கள் inbox-க்கு வரும். ஒரு வீடு அல்லது குழுவின் traffic-ஐ ஒரு server வழியாக அனுப்பும் முன், உங்கள் provider-ன் AUP (acceptable use policy)-ஐப் படிக்கவும். உங்களுக்குத் தெரியாத நபர்களுக்கு exit node-ஐத் திறந்து கொடுக்க வேண்டாம்.
Bandwidth இருமுறை கணக்கிடப்படும். Traffic, tunnel வழியாக VPS-க்கு வந்து, அங்கிருந்து இணையத்திற்குச் செல்கிறது. இந்த இரண்டு திசைகளிலும் நடக்கும் பரிமாற்றமும் உங்கள் plan-ல் உள்ள transfer allowance-ல் கணக்கிடப்படும். Exit node வழியாகப் பார்க்கப்படும் ஒரு video stream, பெரும்பாலானோர் எதிர்பார்ப்பதை விட அதிக bandwidth-ஐப் பயன்படுத்தும்.
Datacenter address ranges-க்கு ஒரு நற்பெயர் (reputation) உண்டு. சில இணையதளங்கள் அவற்றுக்கு அதிக CAPTCHA-க்களைக் காட்டும், சில streaming services அவற்றை நேரடியாகத் தடுத்துவிடும். உங்கள் configuration-ல் எதையும் மாற்றினாலும் இது மாறாது, ஏனெனில் இது உங்கள் provider-க்குச் சொந்தமான address block-ன் தன்மையாகும்.
உங்கள் உள்ளூர் இணைப்பு வழியாகவே traffic ஏன் இன்னும் வெளியேறுகிறது
Exit node விளம்பரப்படுத்தப்பட்டுள்ளது, ஆனால் அங்கீகரிக்கப்படவில்லை. கிளையண்டில் tailscale exit-node list எந்த வெளியீட்டையும் காட்டாது, மேலும் எந்த இயந்திரத்திலும் பிழைப் பதிவுகள் (logs) இருக்காது. Machines பக்கத்திற்குச் சென்று Use as exit node என்பதை ஆன் செய்யவும்.
கிளையண்ட் அதைத் தேர்ந்தெடுக்கவில்லை. அங்கீகாரம் அந்த node-ஐ tailnet-க்குக் கிடைக்கச் செய்யும். ஒவ்வொரு சாதனத்திலும் தேர்வு செய்வது ஒரு தனிப்பட்ட செயலாகும். sudo tailscale set --exit-node=<name>-ஐ மீண்டும் இயக்கவும், பிறகு curl -4 https://ifconfig.me-ஐ மீண்டும் சரிபார்க்கவும்.
Forwarding முடக்கப்பட்டுள்ளது. இதன் அறிகுறி தெளிவானது: tailscale ping <vps> வெற்றிகரமாகிறது, tunnel இயங்குகிறது, ஆனால் அனைத்து வெளி முகவரிகளும் காலாவதியாகின்றன (times out). sysctl net.ipv4.ip_forward பூஜ்ஜியத்தைக் காட்டுகிறது. sysctl கோப்பைச் சரிசெய்து, பிறகு sudo sysctl -p /etc/sysctl.d/99-tailscale.conf-ஐ இயக்கவும்.
Firewall அனுப்பப்பட்ட பாக்கெட்டுகளைத் தடுத்து நிறுத்துகிறது. tailscaled அதன் சொந்த ts-forward சங்கிலியைச் சேர்க்கிறது, ஒரு சுத்தமான VPS-ல் இது போதுமானது. ஏற்கனவே ufw அல்லது Docker இயங்கும் ஒரு கணினியில் FORWARD கொள்கை DROP என்று இருக்கலாம் மற்றும் விதிகள் Tailscale-ன் விதிகளுக்கு முன்னதாக இருக்கலாம். எதனால் பிரச்சினை என்று யூகிக்க வேண்டாம்: கிளையண்ட் ஒரு பக்கத்தை ஏற்ற முயற்சிக்கும்போது sudo iptables -L FORWARD -n -v-ஐ இயக்கவும், எந்த counters மாறுகின்றன என்று கவனிக்கவும். ufw உள்ள கணினியில், வழக்கமான தீர்வு /etc/default/ufw-ல் DEFAULT_FORWARD_POLICY="ACCEPT"-ஐச் சேர்த்து, பிறகு sudo ufw reload-ஐ இயக்குவதாகும். உங்கள் சேவை வழங்குநரின் (provider) கட்டுப்பாட்டுப் பலகத்தில் உள்ள network firewall-ஐயும் சரிபார்க்கவும், ஏனெனில் இது சர்வரில் இயங்கும் எதற்கும் அப்பாற்பட்ட ஒரு தனிப்பட்ட கட்டுப்பாடாகும்.
இது வேலை செய்கிறது, ஆனால் மெதுவாக உள்ளது. இரண்டு இயந்திரங்களிலும் tailscale netcheck-ஐ இயக்கவும். அது UDP தடுக்கப்பட்டதாகக் காட்டினால், இரண்டு சாதனங்களும் நேரடிப் பாதையை உருவாக்க முடியாமல் DERP relay-க்கு மாறுகின்றன, இது ஒவ்வொரு இணைப்பிலும் தாமதத்தை (latency) ஏற்படுத்துகிறது. சேவை வழங்குநரின் network firewall-ல் port 41641-க்கு உள்வரும் UDP போக்குவரத்தை அனுமதிப்பது பொதுவாக நேரடிப் பாதையை மீட்டெடுக்கும்.
Tailscale-ன் coordination server-ஐ எப்போது தவிர்க்க வேண்டும்
மேலே உள்ள அனைத்தும் key exchange மற்றும் நீங்கள் கிளிக் செய்த அனுமதி ஆகியவற்றிற்காக Tailscale-ன் hosted coordination server-ஐச் சார்ந்துள்ளன. உங்கள் traffic நேரடியாக laptop-லிருந்து VPS-க்குச் செல்லும்; coordination server அதை ஒருபோதும் கடத்திச் செல்வதில்லை. இருப்பினும், tailnet-ல் யார் இணையலாம் மற்றும் ஒவ்வொரு சாதனமும் எதை அணுகலாம் என்பதை அதுவே தீர்மானிக்கிறது. இந்தச் சார்புநிலையை நீங்கள் நீக்க விரும்பினால், Headscale-ஐ உங்கள் சொந்த Tailscale control server-ஆக இயக்கவும் மற்றும் இரண்டு client-களையும் அதை நோக்கிச் சுட்டிக்காட்டவும். அதன் பிறகு exit node-க்கான வழிமுறைகள் அதேதான், ஆனால் route அனுமதி hosted console-க்கு பதிலாக Headscale-ன் command line மூலம் செய்யப்படும். Headscale control plane-ஐ மாற்றினாலும், நீங்கள் Tailscale client-களையே பயன்படுத்துவீர்கள். எனவே, முழு stack-ஐயும் நீங்களே இயக்க விரும்பினால், NetBird அதன் சொந்த coordination server மற்றும் client-களை வழங்குகிறது, அவற்றை நீங்கள் ஒரு VPS-ல் host செய்யலாம்.
FAQ
exit node-ஐத் தேர்ந்தெடுத்த பிறகும் எனது traffic ஏன் எனது உள்ளூர் இணைப்பையே பயன்படுத்துகிறது?
இதற்கு இரண்டு பொதுவான காரணங்கள் உள்ளன. exit node விளம்பரப்படுத்தப்பட்டிருக்கலாம், ஆனால் அங்கீகரிக்கப்பட்டிருக்காது: admin console-ல் உள்ள Machines பக்கத்தைத் திறந்து, அந்த VPS-ஐக் கண்டறிந்து, Edit route settings என்பதைத் தேர்ந்தெடுத்து, Use as exit node என்பதை இயக்கவும். இந்த அங்கீகாரம் console-ல் மட்டுமே செய்யக்கூடியது; server-ல் எந்தக் கட்டளையும் இதைச் செய்யாது. இரண்டாவது காரணம் வேறுபட்டது: IP forwarding முடக்கப்பட்டிருக்கலாம். இதனால் tunnel உருவாகி, tailscale ping மூலம் VPS-ஐ அணுக முடியும், ஆனால் வெளிப்படையான அனைத்து முகவரிகளும் காலாவதியாகும் (timeout). sysctl net.ipv4.ip_forward கட்டளையைச் சரிபார்க்கவும்; அதன் மதிப்பு 1 என்று இருக்க வேண்டும்.
ஒவ்வொரு முறையும் நான் exit node-ஐக் கையால் அங்கீகரிக்க வேண்டுமா?
இந்த toggle ஒவ்வொரு machine-க்கும் ஒருமுறை மட்டுமே செய்யப்படும் செயல். நீங்கள் அடிக்கடி VPS-ஐ மீண்டும் உருவாக்கினால், உங்கள் tailnet policy கோப்பில் autoApprovers தொகுப்பைச் சேர்த்து, அதில் "exitNode": ["tag:exit"]-ஐக் குறிப்பிடவும், tagOwners-ன் கீழ் tag:exit-ஐ வரையறுக்கவும், மேலும் --advertise-tags=tag:exit கட்டளையைப் பயன்படுத்தி node-ஐத் தொடங்கவும். ஒரு tagged device உங்கள் பயனர் கணக்கிற்குப் பதிலாக tailnet-க்குச் சொந்தமானது, எனவே அதற்குப் பொருந்தும் access விதிகள் மாறும்.
exit node செயல்பாட்டில் இருக்கும்போது எனது laptop எந்த DNS server-ஐப் பயன்படுத்துகிறது?
exit node-ன் சொந்த DNS server-ஐப் பயன்படுத்துகிறது. exit node-ஐப் பயன்படுத்தும் ஒரு சாதனம் அனைத்து DNS வினவல்களையும் (queries) அங்கேயே அனுப்பும், இது tailnet-க்காக அமைக்கப்பட்ட global மற்றும் split DNS nameserver-களை மீறிச் செயல்படும். இது நீங்கள் தேடும் பெயர்களை உள்ளூர் நெட்வொர்க் பார்ப்பதைத் தடுக்கிறது. ஒரு tailnet nameserver-ஐத் தொடர்ந்து பயன்படுத்த, admin console-ன் DNS பக்கத்தில் அதற்கான Use with exit node என்பதை இயக்கவும். MagicDNS பெயர்கள் தொடர்ந்து செயல்படும், ஏனெனில் Tailscale client அவற்றை உள்ளூர் அளவில் 100.100.100.100-ல் பதிலளிக்கிறது.
ஒரே VPS ஒரே நேரத்தில் exit node-ஆகவும் subnet router-ஆகவும் செயல்பட முடியுமா?
ஆம். sudo tailscale set --advertise-exit-node மற்றும் sudo tailscale set --advertise-routes=10.0.0.0/24 ஆகியவை ஒன்றையொன்று சாராதவை, ஒவ்வொன்றிற்கும் Edit route settings-ன் கீழ் தனித்தனி அங்கீகார toggle உள்ளது. இவை இரண்டுக்கும் VPS-ல் IP forwarding இயக்கப்பட்டிருக்க வேண்டும். உங்கள் laptop-ன் வீட்டு நெட்வொர்க்குடன் பொருந்தக்கூடிய range-ஐ விளம்பரப்படுத்துவதைத் தவிர்க்கவும், ஏனெனில் விளம்பரப்படுத்தப்பட்ட route, default route-ஐ விட அதிக முக்கியத்துவம் பெறும், இதனால் உங்கள் உள்ளூர் சாதனங்களை அணுக முடியாமல் போகும்.
exit node எனது traffic-ஐ எனது VPS வழங்குநரிடமிருந்து மறைக்குமா?
இல்லை. tunnel அந்த VPS-ல் முடிவடைகிறது, எனவே traffic அந்த server-லிருந்து வெளியேறும்போது, சேருமிடம் எதிர்பார்க்கும் வடிவத்தில் செல்லும். தளம் குறியாக்கம் (encrypted) செய்யப்படாத இடங்களில், உங்கள் வழங்குநர் அதைத் தெளிவாகக் கொண்டு செல்வார். ஒரு exit node உங்கள் traffic இணையத்தில் இணையும் இடத்தை, நீங்கள் இருக்கும் நெட்வொர்க்கிலிருந்து நீங்கள் வாடகைக்கு எடுத்த server-க்கு மாற்றுகிறது. இது café Wi-Fi மற்றும் உங்கள் வீட்டு ISP-யிடமிருந்து உங்கள் browsing-ஐ மறைக்கிறது, அதே சமயம் உங்கள் VPS வழங்குநருக்கு உங்கள் கணக்கு பெயருடன் அந்த browsing விவரங்கள் தெரியும்.