macOS-ൽ qBittorrent ഒരു VPN ഇന്റർഫേസിലേക്ക് ബൈൻഡ് ചെയ്യുന്ന വിധം
macOS-ൽ qBittorrent-ന്റെ Advanced-ൽ Network Interface സജ്ജമാക്കി, utun നാമങ്ങൾ സജീവ ടണലിലേക്ക് മാപ്പ് ചെയ്ത്, ക്ലയന്റ് പുനരാരംഭിച്ച്, ഒരു കൈമാറ്റം കൊണ്ട് ബൈൻഡിംഗ് തെളിയിക്കുക.
ഞാൻ ഒരു Mac mini-യിൽ qBittorrent തുറന്ന്, Network Interface utun4-ൽ സജ്ജമാക്കി, പുനരാരംഭിച്ചു, പിന്നീട് VPN ഇപ്പോഴും ആരോഗ്യകരമായ കണക്ഷൻ കാണിക്കുമ്പോൾ ഒരു ടോറന്റ് മെറ്റാഡാറ്റ എടുക്കുന്നതിൽ നിന്ന് നിൽക്കുന്നത് കണ്ട് ഒരു ഉച്ചയ്ക്ക് ശേഷം ചെലവഴിച്ചു. ക്രമീകരണം തത്വത്തിൽ തെറ്റായിരുന്നില്ല; പേര് പഴയതായിരുന്നു. സേവനങ്ങൾ ആരംഭിക്കുമ്പോൾ macOS utun നമ്പറുകൾ നൽകുന്നു, അതിനാൽ മുൻ ആഴ്ച ശരിയായിരുന്ന utun4 ഇപ്പോൾ ഇല്ലാത്ത ഒരു ടണലിലേക്ക് ചൂണ്ടിക്കാണിച്ചു, ക്ലയന്റ് അതിന്റെ സോക്കറ്റുകൾ റൂട്ട് ഇല്ലാത്ത ഒരു ഉപകരണത്തിലേക്ക് ബൈൻഡ് ചെയ്യുകയായിരുന്നു. താഴെയുള്ള ക്രമമാണ് ഞാൻ ഇപ്പോൾ ഉപയോഗിക്കുന്നത്: പ്രവർത്തിക്കുന്ന ടണലിൽ നിന്ന് ഇന്റർഫേസ് വായിക്കുക, ക്ലയന്റിൽ അത് തിരഞ്ഞെടുക്കുക, സെഷൻ പുനരാരംഭിക്കുക, പിന്നീട് ഒരു കൈമാറ്റവും ബോധപൂർവമായ വിച്ഛേദവും കൊണ്ട് ബൈൻഡിംഗ് തെളിയിക്കുക.
Advanced തുറന്ന് ഇന്റർഫേസ് ഫീൽഡ് കണ്ടെത്തുക
qBittorrent വിൻഡോയിൽ Cmd+, ഉപയോഗിച്ച് Preferences തുറന്ന് Advanced പേജിലേക്ക് പോകുക. Network Interface ആണ് പ്രധാന ഫീൽഡ്: അത് സിസ്റ്റത്തിന്റെ ഇന്റർഫേസ് നാമങ്ങൾ ലിസ്റ്റ് ചെയ്യുന്നു, സ്വതവേ Any Interface-ൽ നിൽക്കുന്നു, അതായത് ക്ലയന്റ് തുറക്കുന്ന ഓരോ സോക്കറ്റിനും ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ഒരു റൂട്ട് തിരഞ്ഞെടുക്കുന്നു. പ്രോജക്റ്റിന്റെ ഓപ്ഷൻ റഫറൻസ് ഈ ഫീൽഡും ആ സ്വതവവും രേഖപ്പെടുത്തുന്നു, ഉള്ളിലെ നാമങ്ങൾ ഒരുപോലെയല്ലെങ്കിലും ഇത് എല്ലാ പ്ലാറ്റ്ഫോമുകളിലും ഒരേ ക്രമീകരണമാണ്.
ഇവിടെ രണ്ട് കാര്യങ്ങൾ ആളുകളെ കുഴപ്പത്തിലാക്കുന്നു. en0, en1, utun0 മുതൽ utun9 വരെയുള്ള ഉപകരണ നാമങ്ങളാണ് ലിസ്റ്റ് കാണിക്കുന്നത്, VPN ദാതാവിന്റെ ഉൽപ്പന്ന നാമം ഒരിക്കലും കാണിക്കുന്നില്ല, അതിനാൽ യുക്തിസഹമായ എന്തെങ്കിലും തിരഞ്ഞെടുക്കുന്നതിന് മുൻപ് നിങ്ങൾക്ക് മാപ്പിംഗ് വേണം. കൂടാതെ തിരഞ്ഞെടുപ്പ് BitTorrent സെഷൻ ആരംഭിക്കുമ്പോഴാണ് പ്രാബല്യത്തിൽ വരുന്നത്, OK അമർത്തുന്ന നിമിഷത്തിലല്ല, അതിനാൽ സംരക്ഷിച്ചതായി തോന്നുന്ന മാറ്റം പഴയ ബൈൻഡിംഗിൽ ഇപ്പോഴും പ്രവർത്തിക്കാം.
ആപ്ലിക്കേഷൻ Cmd+Q ഉപയോഗിച്ച് ശരിയായി അടച്ച്, വീണ്ടും തുറക്കുന്നതിന് മുൻപ് പ്രോസസ് പോയെന്ന് ഉറപ്പാക്കുക. വിൻഡോ അടയ്ക്കുന്നത് അതിനെ മറയ്ക്കുക മാത്രം ചെയ്യുന്നു, മറഞ്ഞിരിക്കുന്ന ക്ലയന്റ് അതിന്റെ സെഷനും ശ്രവണ പോർട്ടും പഴയ ഇന്റർഫേസും നിലനിർത്തുന്നു.
pgrep -fl qbittorrentനിങ്ങളുടെ VPN യഥാർത്ഥത്തിൽ സ്വന്തമാക്കുന്ന ഇന്റർഫേസ് കണ്ടെത്തുക
ആദ്യം ദാതാവിന്റെ സ്വന്തം ക്ലയന്റ് വഴി VPN ബന്ധിപ്പിക്കുക, പിന്നീട് ക്ലയന്റിന്റെ മെനുവിന് പകരം സിസ്റ്റത്തിന്റെ കാഴ്ച വായിക്കുക. താഴെയുള്ള കമാൻഡുകൾ ഓരോ ഇന്റർഫേസും അതിന്റെ വിലാസങ്ങളോടെ ലിസ്റ്റ് ചെയ്യുന്നു, സിസ്റ്റം ഏതൊക്കെ സജീവമായി കണക്കാക്കുന്നു എന്ന് കാണിക്കുന്നു, റൂട്ടിംഗ് ടേബിൾ പ്രിന്റ് ചെയ്യുന്നു; നിങ്ങളുടെ ദാതാവ് നൽകുന്ന സ്വകാര്യ ശ്രേണി വഹിക്കുന്ന utun ഉപകരണമാണ് നിങ്ങൾ തിരയുന്നത്.
ifconfig -a | grep -A4 '^utun'
scutil --nwi
netstat -rn -f inet | head -n 5മൂന്ന് വായനകൾ ഏത് ഉപകരണമാണ് ടണൽ എന്ന് പറയുന്നു. utun എൻട്രിക്ക് VPN-ന്റെ പൂളിൽപ്പെടുന്ന inet വിലാസം വേണം. scutil --nwi സിസ്റ്റം ഏത് ഇന്റർഫേസുകളെ സജീവമായി കണക്കാക്കുന്നു, ഏതാണ് പ്രാഥമികം എന്ന് കാണിക്കുന്നു. netstat -rn സ്വതവേയുള്ള റൂട്ട് എങ്ങോട്ടാണ് ചൂണ്ടുന്നത് എന്ന് കാണിക്കുന്നു, ഒരു utun-ന് വിലാസമുണ്ടായിരിക്കെ ആ റൂട്ട് ഇപ്പോഴും en0-ലേക്ക് ചൂണ്ടുന്നുവെങ്കിൽ, ടണൽ മുഴുവൻ ട്രാഫിക്കും വഹിക്കുന്നില്ല, അത് പിന്നീട് ബൈൻഡിംഗ് എന്ത് ചെയ്യുമെന്ന് മാറ്റുന്നു.
രണ്ട് ടണലുകൾ ഒരേസമയം നിലനിൽക്കാമെങ്കിൽ, ഉദാഹരണത്തിന് ഒരു ജോലി പ്രൊഫൈലും വ്യക്തിഗത പ്രൊഫൈലും, രണ്ട് utun ഉപകരണങ്ങളും ഉണ്ടാകും, അവയിൽ ഒന്ന് മാത്രമാണ് ഉപയോഗപ്രദം. ബൈറ്റ് കൗണ്ടറുകൾ ഈ ചോദ്യം തീരുമാനിക്കുന്നു: കൗണ്ടറുകൾ എഴുതിവയ്ക്കുക, ഒരു പേജ് ലോഡ് ചെയ്യുക അല്ലെങ്കിൽ ചെറിയ കൈമാറ്റം ആരംഭിക്കുക, ഏതാണ് നീങ്ങിയതെന്ന് നോക്കുക.
netstat -ib | grep utunനമ്പർ സ്ഥിരമാണെന്ന് കരുതരുത്. വീണ്ടും ബന്ധിപ്പിക്കുമ്പോൾ അതേ ടണലിന് മറ്റൊരു utun നാമം ലഭിച്ചേക്കാം, iCloud അല്ലെങ്കിൽ Continuity സേവനം നിങ്ങളുടെ VPN ബന്ധിപ്പിക്കുന്നതിന് വളരെ മുൻപേ utun0 പിടിച്ചെടുത്തേക്കാം.
ടണലിന്റെ വ്യാപ്തിയുമായി ബൈൻഡിംഗ് യോജിപ്പിക്കുക
ഫീൽഡ് ഒരു ഉപകരണം ബൈൻഡ് ചെയ്യുന്നു, അത്രമാത്രം. VPN 0.0.0.0/0 utun-ലേക്ക് റൂട്ട് ചെയ്യുന്ന പൂർണ ടണലാണെങ്കിൽ, ആ ഉപകരണത്തിലേക്ക് ബൈൻഡ് ചെയ്യുന്നത് ഓരോ പിയർ കണക്ഷനും ഓരോ ട്രാക്കർ അഭ്യർത്ഥനയും VPN വഴി അയയ്ക്കുന്നു. VPN കുറച്ച് സബ്നെറ്റുകൾ മാത്രം റൂട്ട് ചെയ്യുന്ന വിഭജിത ടണലാണെങ്കിൽ, utun-ലേക്ക് ബൈൻഡ് ചെയ്യുന്നത് പിയർ ട്രാഫിക്ക് ആ പിയർമാർക്ക് റൂട്ട് ഇല്ലാത്ത ഉപകരണത്തിലേക്ക് അയയ്ക്കുന്നു, കൈമാറ്റങ്ങൾ ചോർന്നുപോകുന്നതിന് പകരം നിലയ്ക്കുന്നു. രണ്ട് ഫലങ്ങളും Any Interface-നേക്കാൾ സുരക്ഷിതമാണ്, പക്ഷേ അവയിൽ ഒന്ന് മാത്രമാണ് ക്ലയന്റിനെ പ്രവർത്തനക്ഷമമായി നിലനിർത്തുന്നത്. ക്ലയന്റിന് പുറത്ത് ഒന്നും മാറുന്നില്ല: ബ്രൗസറുകളും മറ്റ് ആപ്പുകളും അവയുടെ സ്വന്തം റൂട്ടുകൾ നിലനിർത്തുന്നു, അതിനാൽ എല്ലാ ആപ്ലിക്കേഷനുകളെയും ഉൾക്കൊള്ളുന്ന ആവശ്യകത VPN വശത്തുനിന്ന് നടപ്പാക്കണം.
എന്തെങ്കിലും തിരഞ്ഞെടുക്കുന്നതിന് മുൻപ് സാഹചര്യം വായിക്കുക:
| What you see | What it means for the bind |
|---|---|
| A utun with a provider address and the default route pointing at it | Full tunnel; the bind covers peer and tracker traffic |
| A utun with a provider address but the default route still on en0 | Split tunnel; the bind will stall transfers unless the provider routes 0.0.0.0/0 |
| No utun carrying a provider address | The VPN is down or connects on demand; bring it up before selecting |
| A utun number that changed since the last session | The saved name is stale; reselect and restart |
വിലാസ കുടുംബവും പ്രധാനമാണ്. IPv4 മാത്രം നൽകുന്ന ദാതാവ് ബൈൻഡ് ചെയ്ത ഇന്റർഫേസിനെ IPv6 വിലാസമില്ലാതെ വിടുന്നു, അതിനാൽ IPv6 പിയർമാർ Wi-Fi വഴി രക്ഷപ്പെടുന്നതിന് പകരം പരാജയപ്പെടുന്നു. വേറെയായി, സോക്കറ്റുകൾ ബൈൻഡ് ചെയ്യുന്നത് നാമ വിശകലനം ഉറപ്പിക്കുന്നില്ല: ട്രാക്കർ ഹോസ്റ്റ്നാമങ്ങൾ macOS റിസോൾവർ വഴി പരിഹരിക്കുന്നു, അത് തിരഞ്ഞെടുത്ത ഉപകരണത്തിന് പകരം സിസ്റ്റത്തിന്റെ DNS കോൺഫിഗറേഷൻ പിന്തുടരുന്നു.
ശരിയെന്ന് തോന്നുന്ന തിരഞ്ഞെടുപ്പ് പരാജയപ്പെടുന്ന മൂന്ന് വഴികൾ
ആദ്യ പരാജയം പുനരാരംഭിക്കാതിരിക്കുന്നതാണ്. ഫീൽഡ് utun4 കാണിക്കുന്നു, മുൻഗണനകൾ കോൺഫിഗർ ചെയ്തതായി തോന്നുന്നു, പരീക്ഷണ കൈമാറ്റം ഇപ്പോഴും Wi-Fi വഴി പുറത്തുപോകുന്നു, കാരണം പ്രവർത്തിക്കുന്ന സെഷൻ പഴയ ബൈൻഡിംഗ് നിലനിർത്തി. പൂർണമായി അടയ്ക്കുക, pgrep ഉപയോഗിച്ച് ഉറപ്പാക്കുക, വീണ്ടും തുറക്കുക, കൈമാറ്റം വീണ്ടും ആരംഭിക്കുക.
രണ്ടാമത്തേത് വീണ്ടും ബന്ധിപ്പിച്ചതിന് ശേഷമുള്ള പഴയ പേരാണ്. ബൈൻഡ് ചെയ്ത ഉപകരണം അപ്രത്യക്ഷമാകുമ്പോൾ പിയർ കണക്ഷനുകൾ പരാജയപ്പെടുന്നു, ഇന്റർഫേസ് പോയി എന്ന വ്യക്തമായ സന്ദേശത്തിന് പകരം ക്ലയന്റ് ട്രാക്കർ പിശകുകൾ റിപ്പോർട്ട് ചെയ്യാൻ ചായുന്നു, അത് മരിച്ച ടോറന്റ് പോലെ തോന്നിക്കുന്നു. ifconfig വീണ്ടും വായിക്കുക, പുതിയ പേര് തിരഞ്ഞെടുക്കുക, പുനരാരംഭിക്കുക.
മൂന്നാമത്തേത് ബൈൻഡിംഗ് അടഞ്ഞ രീതിയിൽ പരാജയപ്പെടുമെന്ന് അനുമാനിക്കുന്നതാണ്. ഒരു ഇന്റർഫേസ് തിരഞ്ഞെടുക്കുന്നത് സോക്കറ്റുകൾ ഒരു ഉപകരണ നാമത്തോട് ചേർക്കാൻ സിസ്റ്റത്തോട് ആവശ്യപ്പെടുന്നു; ആ പേര് ഇല്ലാതിരിക്കുകയോ പുനരുപയോഗിക്കുകയോ ചെയ്യുമ്പോൾ എന്ത് സംഭവിക്കുമെന്ന് ക്രമീകരണ സ്ക്രീൻ ഉറപ്പ് നൽകുന്നില്ല. അടുത്ത വിഭാഗത്തിലെ വിച്ഛേദ പരീക്ഷണം മാത്രമാണ് കണക്കാക്കപ്പെടുന്ന ഏക തെളിവ്.
യഥാർത്ഥ കൈമാറ്റവും വിച്ഛേദവും ഉപയോഗിച്ച് പരിശോധിക്കുക
നിങ്ങൾക്ക് പ്രവർത്തിപ്പിക്കാൻ അനുവാദമുള്ള ഒരു കൈമാറ്റം ഉപയോഗിക്കുക, ഉദാഹരണത്തിന് ഒരു Linux വിതരണ ഇമേജ്, VPN ബന്ധിപ്പിച്ചിരിക്കുമ്പോൾ അത് ആരംഭിക്കുക. മുൻപും ശേഷവും ഓരോ ഇന്റർഫേസിലെയും കൗണ്ടറുകൾ നിരീക്ഷിച്ച് VPN ക്ലയന്റിന്റെ സ്വന്തം ഡാറ്റ കൗണ്ടറുമായി താരതമ്യം ചെയ്യുക; പിയർ ലിസ്റ്റ് നിറയുമ്പോൾ രണ്ടും ഒരുമിച്ച് ഉയരണം.
netstat -ib | grep utun
pgrep -fl qbittorrentപിന്നീട് VPN അതിന്റെ സ്വന്തം ഇന്റർഫേസിൽ നിന്ന് വിച്ഛേദിച്ച് കൈമാറ്റം നിരീക്ഷിക്കുക. പിയർമാർ പോകണം, ടണൽ വീണതിന് തൊട്ടുപിന്നാലെ പുതിയ കണക്ഷനുകൾ പരാജയപ്പെടണം. ത്രൂപുട്ട് തുടരുകയാണെങ്കിൽ, ബൈൻഡിംഗ് പ്രാബല്യത്തിലില്ല, നിങ്ങൾ ഫയർവാളിലല്ല, പുനരാരംഭ ഘട്ടത്തിൽ തിരിച്ചെത്തിയിരിക്കുന്നു.
വീണ്ടും ബന്ധിപ്പിച്ച് തിരഞ്ഞെടുത്ത പേര് വീണ്ടും പരിശോധിക്കുക, കാരണം ടണൽ മറ്റൊരു utun-ന് കീഴിൽ തിരിച്ചുവന്നേക്കാം. ടണലിന്റെ തരം, ഇന്റർഫേസ് നാമം, VPN വീഴുമ്പോൾ പ്രതീക്ഷിക്കുന്ന സ്വഭാവം എന്നിവ രേഖപ്പെടുത്തുന്ന ചെറിയ കുറിപ്പ് അടുത്ത സെഷൻ ലാഭിക്കുന്നു: ഈ ക്രമീകരണം ഓരോ യന്ത്രത്തിനും ഓരോ ദാതാവിനുമുള്ളതാണ്, ക്ലയന്റ് അപ്ഗ്രേഡോ VPN ആപ്പ് മാറ്റമോ അത് അതിജീവിക്കുന്നില്ല.