Pool tal-mining permezz tal-VPN: żomm is-sessjoni fit-triq it-tajba
Miner tal-pool jiftaħ sessjoni waħda Stratum li toħroġ, mhux port peer. Qiegħed it-tunnel taħt dak il-proċess u aqra r-rotta u r-resolver min-namespace tiegħu.
Is-software tal-mining iżomm socket wieħed miftuħ lejn indirizz wieħed, u kull mistoqsija dwar it-tunnel, ir-rotta u x-xogħol akkreditat tiddendel ma' dak is-socket. Dak is-socket huwa sessjoni tal-klijent li toħroġ lejn endpoint tal-pool, mhux listener li jaċċetta peers. Il-mixja hawn taħt issegwiha mill-erba' valuri li ħareġ il-pool sa share li l-pool verament irreġistra, u tħalli s-servizzi l-oħra tal-host waħedhom. Kull pass jipproduċi tweġiba li tista' tqabbel, mhux impressjoni.
Ibda mill-endpoint li l-pool verament ħareġ
Il-pool jagħtik erba' valuri li jiffurmaw il-kuntratt kollu: isem tal-host jew indirizz, port, varjant tal-protokoll u string tal-kont. Ħudhom mid-dashboard tal-pool jew mill-messaġġ tal-onboarding, mhux minn tutorial għal pool ieħor. Jeżistu shards reġjonali għall-istess servizz, għalhekk isem tal-host ikkupjat minn gwida qadima xorta jista' jikkonnettja u xorta jista' jakkredita kont li qatt ma ħsibt li tuża. Ikkupja l-erba' valuri kelma b'kelma fil-konfigurazzjoni tal-miner, għax string tal-kont miktub mill-ġdid jitlef separatist.
Il-fluss li qed tirrotta huwa dak li l-gwida tal-iżviluppatur ta' Bitcoin issejjaħlu sessjoni Stratum: konnessjoni TCP persistenti f'żewġ direzzjonijiet fejn il-pool iqassam ix-xogħol u l-miner jirritorna share. Dan mhux l-istess fluss bħall-konnessjonijiet peer ta' node sħiħ jew is-sinkronizzazzjoni tal-katina ta' wallet, u li tingħaqad f'daqqa f'klassi waħda ta' traffiku huwa fejn tibda l-biċċa l-kbira tal-konfużjoni. Biss l-ewwel waħda tappartjeni taħt din il-politika.
Fejn il-pool joffri TLS, żomm il-verifika tas-server li teħtieġ id-dokumentazzjoni tiegħu. Tunnel jikkripta l-hop minn magni tiegħek għas-server VPN u jieqaf hemm; mhuwiex jagħti garanzija għal min iwieġeb fuq in-naħa l-oħra. Żomm iż-żewġ kontrolli, wieħed f'kull tarf, jekk trid li s-sessjoni tibqa' ħajja f'ħruġ kompromess.
Waħħal it-tunnel mal-proċess, mhux mad-dar
Jaħdmu żewġ punti ta' twaħħil: ħaddem il-klijent VPN ġewwa n-namespace tan-netwerk li juża l-miner, jew agħti lil dak in-namespace gateway li jġorr it-traffiku tiegħu fit-tunnel. Iż-żewġ arranġamenti jqiegħdu s-sessjoni fit-triq qabel ma l-pool jaraha. Il-falliment tas-soltu huwa klijent fuq il-host, miner f'container bil-pont tiegħu u rotta tal-host li l-container qatt ma jikkonsulta. It-tieqa tal-klijent tidher b'saħħitha waqt li l-pool jirreġistra l-indirizz tad-dar tiegħek.
Iċċekkja t-trasport proprju tat-tunnel qabel ma tillimita xejn. Il-klijent irid jilħaq is-server tiegħu permezz tal-underlay, għalhekk politika li taqbad kull packet taqbad ukoll il-packets li kienu jibnu t-tunnel. Imbagħad it-tunnel ma jistax jibda u xejn ieħor ma joħroġ lanqas. Agħżel bil-funzjoni split tunnel tal-klijent x'jidħol fit-tunnel; l-editjar tar-rotot default bl-idejn huwa kif jisparixxi l-underlay.
Bil-politika fil-post, aqra t-tabella tas-sockets fin-namespace li jippossjedi l-miner. Il-fluss lejn il-port tal-pool għandu jkun fuq l-interface tat-tunnel, u żewġ kmandi jwieġbu dik il-mistoqsija. Il-port hawn taħt huwa eżempju; ibdel dak li ħareġ il-pool.
sudo nsenter -t "$(pidof cgminer)" -n ss -tnp state established 'dport = :3333'
sudo nsenter -t "$(pidof cgminer)" -n ip route get 203.0.113.10Aqra rotta u resolver mill-kuntest proprju tal-miner
Routing u riżoluzzjoni tal-ismijiet huma għal kull namespace, għalhekk verifika li titħaddem f'shell ordinarju tiddeskrivi l-magna ħażina kull darba li l-miner ikun f'container. Idħol l-ewwel fin-namespace u mbagħad staqsi liema interface kien iġorr packet lejn l-indirizz tal-pool u liema resolver kien iwieġeb għall-isem tal-host tiegħu. It-tweġibiet tal-host ma jiġux trasferiti, u d-distakk bejniethom huwa sors komuni ta' tort f'post ħażin.
Semmi l-interface li tikseb: it-tunnel ifisser li s-sessjoni hija fit-triq maħsuba, filwaqt li l-link fiżiku jfisser li regola qabdet qabel ma ħsibt. It-tul tal-prefiss jiddeċiedi l-ewwel, imbagħad il-metrika, imbagħad ir-regoli tal-politika, għalhekk tabella b'diversi entrati default ma tidduplikax packets, sempliċement titlef.
Ir-resolvers ifallu separatament mir-rotot. Tunnel li jerġa' jikteb /etc/resolv.conf jista' jħalli n-namespace jindika resolver aċċessibbli biss minn ġewwa t-tunnel, li jfalli qabel ma sseħħ xi handshake TCP. Issolvi l-isem tal-host tal-pool ġewwa n-namespace u qabblu mal-indirizz ippubblikat. Jekk it-tfittxija tiskadi jew tirritorna xi ħaġa oħra, sewwi r-riżoluzzjoni qabel ma tmiss ir-rotot.
Żomm il-klijent tal-pool u l-listener tan-node separati
Il-port 8333 huwa l-port peer ta' Bitcoin Core, fejn node sħiħ jisma' konnessjonijiet dejjem ġejjin; miner tal-pool qatt ma jeħtieġu miftuħ, u l-ftuħ tiegħu ma jsewwix ħsara li toħroġ. Listeners li jidħlu u sessjonijiet li joħorġu huma rwoli opposti b'aspettattivi ta' fiduċja opposti. Xejn fil-konfigurazzjoni ta' miner ma jorbot dak il-port, għalhekk port magħluq ma jistax jispjega ebda żball li jirrapporta. Parir miktub għall-aċċessibbiltà ta' node jista' għalhekk iħalli servizz pubbliku jaħdem fuq host li kien biss maħsub biex jissottometti shares.
Jekk magna waħda verament tagħmel it-tnejn, ittratta kull rwol bħala servizz tiegħu b'deċiżjoni ta' aċċess tiegħu. Il-listener tan-node jappartjeni wara l-politika li tapplika għas-servizzi pubbliċi, u s-sessjoni tal-miner tappartjeni għall-politika tal-ħruġ li tagħżel it-tunnel. Irreġistra liema rwol għandu l-host u neħħi r-regoli tar-rwol l-ieħor meta dan jinbidel, għax regola ta' permess li tibqa' wara tgħix iktar mill-motiv tagħha.
Ipprova li l-pool irċieva x-xogħol
Fann imħabbtu u hashrate li jitla' juru li l-miner qed jikkalkula, mhux li xi ħaġa waslet il-pool. Il-prova tinsab fil-kontaturi tal-bgħit tal-klijent jew fid-dashboard tal-pool: shares aċċettati, shares miċħuda u r-raġuni mehmuża ma' kull rifjut. Dawk in-numri jifirdu tliet fallimenti li minn barra jidhru l-istess: l-ebda sessjoni, sessjoni mingħajr kreditu u sessjoni li tkompli tqabbad mill-ġdid. Aqrahom qabel ma tbiddel xi konfigurazzjoni.
Osserva prova waħda ta' konnessjoni b'logging dettaljat u innota l-aħħar stadju li rnexxa. L-istadju fejn is-sekwenza tieqaf huwa iktar utli minn kwalunkwe messaġġ wieħed madwaru:
| 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 |
Imbagħad ħalli l-klijent jaħdem tieqa fissa u għodd iż-żewġ riżultati mil-log tiegħu. Grep wieħed għal kull kontatur biżżejjed, u t-tqabbil tagħhom fuq l-istess tieqa jifred pool bil-mod minn triq maqlugħa. Aġġusta t-triq għal fejn jikteb il-klijent tiegħek, għax iż-żewġ għadd ma jiddependux mill-post:
grep -c Accepted /var/log/miner.log
grep -c Rejected /var/log/miner.logJekk regola tipprojbixxi konnessjoni diretta mal-pool kull darba li t-tunnel jaqa', esprimiha bħala blokk espliċitu fuq l-endpoint tal-pool. Klijent li jipprova mill-ġdid bil-kwiet fuq il-link fiżiku jkompli jagħmel mining u jkompli jikser dik ir-regola, u l-wiri tal-istat tiegħu mhux se jsemmi dan. Ittestja r-regola billi tħalli t-tunnel jaqa' apposta u tikkonferma li l-port tal-pool ma jistax jintlaħaq xejn.