VPN દ્વારા માઇનિંગ પૂલ: સત્રને યોગ્ય માર્ગ પર રાખો
પૂલ માઇનર એક બહાર જતું Stratum સત્ર ખોલે છે, peer પોર્ટ નહીં. ટનલને તે પ્રક્રિયા નીચે મૂકો અને રૂટ તથા રિઝોલ્વર તેના નેમસ્પેસમાંથી વાંચો.
માઇનિંગ સોફ્ટવેર એક જ સોકેટને એક જ સરનામા તરફ ખુલ્લું રાખે છે, અને ટનલ, રૂટ તથા જમા થયેલા કામ વિશેનો દરેક પ્રશ્ન એ જ સોકેટ પર ટકેલો હોય છે. એ સોકેટ પૂલના છેલ્લા બિંદુ તરફ જતું બહારનું ક્લાયન્ટ સત્ર છે, peer સ્વીકારતું શ્રોતા નહીં. નીચેની મુસાફરી તેને પૂલે જારી કરેલા ચાર મૂલ્યોથી પૂલે ખરેખર નોંધેલા હિસ્સા સુધી લઈ જાય છે, અને હોસ્ટની બાકીની સેવાઓને અડતી નથી. દરેક પગલું એવો જવાબ આપે છે જેની તમે સરખામણી કરી શકો, અનુભૂતિ નહીં.
પૂલે ખરેખર જારી કરેલા છેલ્લા બિંદુથી શરૂ કરો
પૂલ તમને ચાર મૂલ્યો આપે છે જે આખો કરાર બનાવે છે: હોસ્ટનામ કે સરનામું, પોર્ટ, પ્રોટોકોલ પ્રકાર અને ખાતા શબ્દમાળા. તે પૂલના ડેશબોર્ડ કે સ્વાગત સંદેશમાંથી લો, બીજા પૂલની માર્ગદર્શિકામાંથી નહીં. એ જ સેવા માટે પ્રાદેશિક શાર્ડ હાજર છે, તેથી જૂની માર્ગદર્શિકામાંથી કૉપી કરેલું હોસ્ટનામ હજી જોડાઈ શકે છે અને હજી એવા ખાતામાં જમા થઈ શકે છે જે તમે ક્યારેય વાપરવા નહોતા માંગ્યું. ચારેય મૂલ્યો જેમ છે તેમ માઇનરની ગોઠવણીમાં કૉપી કરો, કારણ કે ફરી ટાઇપ કરેલી ખાતા શબ્દમાળા એક વિભાજક ગુમાવે છે.
તમે જે પ્રવાહ રૂટ કરી રહ્યા છો તે જ છે જેને Bitcoin વિકાસકર્તા માર્ગદર્શિકા Stratum સત્ર કહે છે: એક ટકાઉ દ્વિ-માર્ગી TCP જોડાણ જેમાં પૂલ કામ વહેંચે છે અને માઇનર હિસ્સા પાછા મોકલે છે. આ પૂર્ણ નોડના peer જોડાણ કે વૉલેટના ચેન સિંક જેવો પ્રવાહ નથી, અને આ બધાને એક જ ટ્રાફિક વર્ગમાં વાળવું એ જ એ જગ્યા છે જ્યાંથી મોટાભાગની ગૂંચવણ શરૂ થાય છે. આ નીતિ હેઠળ ફક્ત પહેલું આવે છે.
જ્યાં પૂલ TLS આપે છે, ત્યાં તેના દસ્તાવેજો માગતી સર્વર ચકાસણી રાખો. ટનલ તમારા મશીનથી VPN સર્વર સુધીની છલાંગ એન્ક્રિપ્ટ કરે છે અને ત્યાં જ પૂરી થાય છે; તે બીજી બાજુ જવાબ આપનારની બાંયધરી નથી. સત્રને સમજૂતી થયેલા નિકાસમાંથી ટકવું હોય તો બંને ચકાસણી રાખો, દરેક છેડે એક.
ટનલને પ્રક્રિયા સાથે બાંધો, ઘર સાથે નહીં
જોડવાની બે જગ્યા કામ કરે છે: VPN ક્લાયન્ટને એ જ નેટવર્ક નેમસ્પેસની અંદર ચલાવો જે માઇનર વાપરે છે, અથવા એ નેમસ્પેસને એવું ગેટવે આપો જે તેનું ટ્રાફિક ટનલમાં લઈ જાય. બંને ગોઠવણો સત્રને પૂલ જોય તે પહેલાં માર્ગ પર મૂકી દે છે. સામાન્ય નિષ્ફળતા એ છે કે ક્લાયન્ટ હોસ્ટ પર હોય, માઇનર પોતાના પુલવાળા કન્ટેનરમાં હોય, અને હોસ્ટનો રૂટ એવો હોય જે કન્ટેનર ક્યારેય પૂછતું નથી. ક્લાયન્ટની વિન્ડો સ્વસ્થ દેખાય છે જ્યારે પૂલ તમારું ઘરનું સરનામું નોંધે છે.
કંઈપણ મર્યાદિત કરતાં પહેલાં ટનલની પોતાની વહનશક્તિ ચકાસો. ક્લાયન્ટને તેના સર્વર સુધી નીચેના સ્તરમાંથી પહોંચવું પડે છે, તેથી દરેક પેકેટ પકડતી નીતિ એ પેકેટ પણ પકડે છે જે ટનલ બનાવતા. પછી ટનલ શરૂ થઈ શકતું નથી અને બીજું કંઈ બહાર જતું નથી. ક્લાયન્ટની વિભાજિત ટનલ સુવિધાથી પસંદ કરો કે ટનલમાં શું જાય; ડિફૉલ્ટ રૂટ હાથે બદલવા એ જ રસ્તો છે જેનાથી નીચું સ્તર અદૃશ્ય થાય છે.
નીતિ સ્થિર થયા પછી, જે નેમસ્પેસનો માલિક માઇનર છે ત્યાંનું સોકેટ કોષ્ટક વાંચો. પૂલના પોર્ટ તરફનો પ્રવાહ ટનલ ઇન્ટરફેસ પર હોવો જોઈએ, અને બે આદેશો આ પ્રશ્નનો જવાબ આપે છે. નીચેનો પોર્ટ ઉદાહરણ છે; પૂલે જારી કરેલા પોર્ટ સાથે બદલો.
sudo nsenter -t "$(pidof cgminer)" -n ss -tnp state established 'dport = :3333'
sudo nsenter -t "$(pidof cgminer)" -n ip route get 203.0.113.10રૂટ અને રિઝોલ્વર માઇનરના પોતાના સંદર્ભમાંથી વાંચો
રૂટિંગ અને નામ ઉકેલ હરેક નેમસ્પેસ માટે છે, તેથી સામાન્ય શેલમાં ચલાવેલી ચકાસણી ખોટા મશીનનું વર્ણન કરે છે જ્યારે પણ માઇનર કન્ટેનરમાં હોય. પહેલાં નેમસ્પેસમાં પ્રવેશ કરો અને પછી પૂછો કે કયું ઇન્ટરફેસ પેકેટને પૂલના સરનામે લઈ જશે અને કયું રિઝોલ્વર તેના હોસ્ટનામનો જવાબ આપશે. હોસ્ટના જવાબો સ્થાનાંતરિત થતા નથી, અને તેમની વચ્ચેનું અંતર ખોટી જગ્યાએ મૂકાયેલા દોષનો સામાન્ય સ્રોત છે.
તમને મળતા ઇન્ટરફેસનું નામ આપો: ટનલ એટલે સત્ર ઇચ્છિત માર્ગ પર છે, જ્યારે ભૌતિક કડી એટલે કોઈ નિયમ તમારી અપેક્ષા પહેલાં મળી ગયો. પ્રીફિક્સની લંબાઈ પહેલાં નક્કી કરે છે, પછી મેટ્રિક, પછી નીતિના નિયમો, તેથી ઘણી ડિફૉલ્ટ નોંધોવાળું કોષ્ટક પેકેટ બમણા કરતું નથી, ફક્ત હારે છે.
રિઝોલ્વર રૂટથી અલગ નિષ્ફળ જાય છે. /etc/resolv.conf ફરી લખતું ટનલ નેમસ્પેસને એવા રિઝોલ્વર તરફ નિર્દેશ કરતું છોડી શકે છે જે ફક્ત ટનલની અંદરથી પહોંચી શકાય છે, અને આ કોઈપણ TCP હેન્ડશેક પહેલાં નિષ્ફળ જાય છે. પૂલનું હોસ્ટનામ નેમસ્પેસની અંદર ઉકેલો અને પ્રકાશિત સરનામા સાથે સરખાવો. જો શોધ સમય પૂરો થાય અથવા બીજું કંઈ પરત આપે, તો રૂટને અડકતાં પહેલાં ઉકેલ સુધારો.
પૂલના ક્લાયન્ટ અને નોડના શ્રોતાને અલગ રાખો
પોર્ટ 8333 Bitcoin Coreનો peer પોર્ટ છે, જ્યાં પૂર્ણ નોડ આવતાં જોડાણો સાંભળે છે; પૂલ માઇનરને તે ક્યારેય ખુલ્લો ન જોઈએ, અને તેને ખોલવાથી બહાર જતી ખામી સુધરતી નથી. આવતા શ્રોતા અને જતાં સત્રો વિરોધી ભૂમિકાઓ છે વિરોધી વિશ્વાસ-ધારણાઓ સાથે. માઇનરની ગોઠવણીમાં કંઈ પણ એ પોર્ટ બાંધતું નથી, તેથી બંધ પોર્ટ તે જે કોઈ ભૂલ જણાવે તેની સમજૂતી આપી શકતું નથી. તેથી નોડની પહોંચ માટે લખાયેલી સલાહ એવા હોસ્ટ પર જાહેર સેવા ચાલુ રાખી શકે છે જેને ફક્ત હિસ્સા મોકલવાના હતા.
જો એક જ મશીન ખરેખર બંને કરે, તો દરેક ભૂમિકાને પોતાના પ્રવેશ-નિર્ણયવાળી અલગ સેવા ગણો. નોડનો શ્રોતા તમે જાહેર સેવાઓ પર લગાવતી નીતિ પાછળ છે, અને માઇનરનું સત્ર ટનલ પસંદ કરતી બહાર જતી નીતિનું છે. હોસ્ટ કઈ ભૂમિકા ભજવે છે તે નોંધો અને તે બદલાય ત્યારે બીજી ભૂમિકાના નિયમો દૂર કરો, કારણ કે બચેલો પરવાનગી નિયમ તેના કારણ કરતાં વધુ જીવે છે.
સાબિત કરો કે પૂલને કામ મળ્યું
વ્યસ્ત પંખો અને વધતો હેશરેટ બતાવે છે કે માઇનર ગણતરી કરે છે, પૂલ સુધી કંઈ પહોંચ્યું તે નહીં. પુરાવો ક્લાયન્ટના મોકલણ કાઉન્ટરોમાં કે પૂલના ડેશબોર્ડ પર છે: સ્વીકૃત હિસ્સા, નકારેલા હિસ્સા અને દરેક નકાર સાથે જોડાયેલું કારણ. તે સંખ્યાઓ ત્રણ એવી નિષ્ફળતાઓ અલગ કરે છે જે બહારથી એકસરખી દેખાય છે: કોઈ સત્ર નહીં, જમા વગરનું સત્ર, અને સતત ફરી જોડાતું સત્ર. કોઈ પણ ગોઠવણી બદલતાં પહેલાં તે વાંચો.
વિગતવાર લૉગ સાથે એક જોડાણનો પ્રયાસ જુઓ અને છેલ્લું સફળ પગલું નોંધો. જે પગલા પર ક્રમ અટકે છે તે આસપાસના કોઈ પણ એક સંદેશ કરતાં વધુ ઉપયોગી છે:
| Last stage reached | What it rules out | Probe to run next |
|---|---|---|
| Name lookup completed | Resolver and namespace reachability | ip route get for the returned address |
| TCP connect completed | Route and egress filtering | ss -tnp on the tunnel interface |
| Subscription returned a job | Endpoint or protocol mismatch | Accepted against rejected counts |
પછી ક્લાયન્ટને નિશ્ચિત વિન્ડો સુધી ચલાવવા દો અને તેના લૉગમાંથી બંને પરિણામ ગણો. દરેક કાઉન્ટર માટે એક grep પૂરતું છે, અને તેમની સરખામણી એ જ વિન્ડો પર ધીમા પૂલને તૂટેલા માર્ગથી અલગ કરે છે. માર્ગને ત્યાં ગોઠવો જ્યાં તમારો ક્લાયન્ટ લખે છે, કારણ કે બંને ગણતરી સ્થાન પર આધારિત નથી:
grep -c Accepted /var/log/miner.log
grep -c Rejected /var/log/miner.logજો કોઈ નિયમ દર વખતે ટનલ પડે ત્યારે પૂલ સાથે સીધો સંપર્ક મનાઈ કરે, તો તેને પૂલના છેલ્લા બિંદુ પર સ્પષ્ટ અવરોધ તરીકે વ્યક્ત કરો. જે ક્લાયન્ટ શાંતિથી ભૌતિક કડી દ્વારા ફરી પ્રયાસ કરે છે તે ખનન ચાલુ રાખશે અને તે નિયમનું ઉલ્લંઘન ચાલુ રાખશે, અને તેની સ્થિતિ સ્ક્રીન આનો ઉલ્લેખ કરશે નહીં. નિયમને ટનલ જાણી જોઈને પાડીને અને પૂલનો પોર્ટ બિલકુલ પહોંચી ન શકાય તેની ખાતરી કરીને કસો.