-

@ Feldspar
2025-01-18 16:22:48
*บทความนี้ not a tutorial เขียนไว้เป็นบันทึกความซนของผมเอง*
เรื่องมีอยู่ว่า Alby เค้าจะยกเลิก custodial wallet ที่บริการกระเป๋าให้ฟรี ซึ่งประกาศมาซักพักใหญ่ๆแล้วล่ะ ผมก็นั่งไถฟีดค้นหากระเป๋าใหม่ที่จะมาใช้แทนแล้วไปจบอยู่ที่ LifPay เอามาใช้เป็นกระเป๋าชั่วคราวไปก่อนไว้รับส่ง zap เล็กๆน้อยๆ แล้วช่วงนั้นก็เป็นจังหวะเดียวกับที่มหาลัยมีจัดงานกึ่งสัมมนาเลยได้โอกาสเปิดโต๊ะคุยเรื่อง Bitcoin กันไปทั้งคืน
ผ่านไปซักหลายวันอยู่ขณะกำลังเก็บห้อง ผมก็ไปเจอกับคอมเครื่องเก่าที่ตั้งเกาะฝุ่นหลบมุมอยู่ คอมเครื่องนี้เคยเป็นคอมเครื่องหลักที่ซื้อมาไว้ประมาณ 10 ปีหน่อยๆ จนถึงช่วงขึ้นมหาลัยที่ต้องเปลี่ยนไปแบกโน้ตบุ้กไปเรียนแทน กลายเป็นว่าคอมเครื่องนี้ก็ตั้งไว้ในห้องแบบไม่ได้เสียบปลั้กเลยไปเป็นหลักปี ก็เลยเกิดไอเดียว่าไม่งั้นก็เอามาล้างเครื่องแล้วลองเปิด node ดูหน่อยมั้ย เพราะยังไงกิจกรรมทุกอย่างตอนนี้คือย้ายไปบนโน้ตบุ้กแทนหมดแล้ว จนเป็นจุดเริ่มต้นถึงการเดินทางแห่ง home node ขึ้นมา
## เตรียมเครื่อง
ด้าน hardware ที่ใช้ก็ไม่พ้นคอมเครื่องเก่านั้น ที่ตอนนี้สเปคมันค่อนข้าง overkill สำหรับการเปิด home lightning node เบาๆ เพราะนอกจากจะเป็นเคสขนาด e-ATX ที่อัด HDD ได้หลายลูกแล้วก็ยังมีการ์ดจอเก่าอยู่ด้วย สเปคคร่าวๆก็มี i5-4670k กับแรม DDR3 12GB แค่นี้ก็กินไฟไปหลายสิบวัตต์แล้ว ยังมีการ์ดจอ GTX 1050Ti เสียบอยู่เฉยๆด้วย แล้วยังมี SSD SATA 480GB ตัวนึงกับ HDD 1TB พ่วงด้วยช่องอ่านแผ่น DVD ที่ประดับหน้าเคสไว้ เลยคิดไว้ว่าน่าจะต้องซื้อคอมอีกเครื่องเล็กๆมาเปิดแทนพี่ใหญ่นี้ในเร็ววัน
หันมาด้าน software กันบ้าง ผมก็เลือก Umbrel มาใช้ สาเหตุหลักก็เน้นสะดวกครับ สละ USB drive มาอันนึงแล้ว flash เข้าไปเลย จิ้มเดียวจบ แต่ข้อเสียแรกที่เห็นเลยคือใช้ได้ drive เดียวแล้วใช้ทั้งหมดเลย 1 drive ก็เลยต้องเอาระบบไปลงที่ SSD ไม่งั้นเดี๋ยวระบบอืดตาย ก็นะ แลกกับความสะดวกก็งี้

## เปิดเครื่อง
แน่นอนว่าต้นเรื่องเราคือ Alby อยากให้เราย้ายกระเป๋ามาใช้เป็น Alby Hub ที่เป็น self-custodial ซึ่งใน Umbrel นั้นจะบังคับให้เราติดตั้ง Lightning Node ที่ตัวมันก็จะบังคับให้เราลง Bitcoin Node ด้วยอีกชั้น ทำให้จำนวน app ขั้นต่ำในการเปิด Alby Hub บน Umbrel อยู่ที่ 3 apps แต่อันนี้ผมลงจุกจิกเพิ่มเข้ามาด้วย นี่แหละข้อดีอันนึงของ Umbrel

สเต็ปการทำงานเบื้องต้นก็คือต้องรอ Bitcoin Node sync ให้ครบก่อน ไม่งั้น Lightning Node จะไม่เปิดให้เราเข้าไปใช้งาน แต่ระหว่างรอ sync นั้นเราสามารถเข้าไปจด recovery seed ไว้ก่อนได้เลย ห้ามลืมเด็ดขาด
พอ Lightning Node เราพร้อมแล้ว ก็ไปกันต่อที่ Alby Hub ก็จะมีขั้นตอนตั้งค่านู้นนี้นั้น ให้เราตั้งรหัสผ่านล็อก Hub แล้ว ก็จะมีให้เชื่อม Alby Account ด้วย ซึ่งแน่นอนว่าผมมาเพื่อสิ่งนี้ แลก auth token กันนิดหน่อยก็ถึงหน้า dashboard แล้ว
## เปิดช่อง
เมื่อผมหันมาใช้ self-custodial wallet แล้ว สิ่งแรกที่ต้องจัดการเลยคือต้องมีช่องทางให้เงินไหลเข้ามา ไม่งั้นจะเปิด node เผาค่าไฟไปทำไมเนอะ ซึ่งใน Alby Hub เนี่ยเค้าก็มีรายชื่อผู้ให้บริการ LSP ที่เราสามารถซื้อ channel เปิดทางให้เงินไหลเข้ามาได้ ซึ่งผมก็เลือกเปิด channel กับ Lnserver เพราะลองเทียบราคาดูแล้วคือจ่ายค่าเปิด channel น้อยที่สุดในลิสด์นี้แล้ว บวกกับว่าเราสามารถออกไปซื้อตรงๆกับทาง Lnserver เองเหมือนกัน

โน้ตสำคัญของผมเวลาเปิด channel มีอยู่สองจุด จุดแรกคือต้องดู on-chain fee rate เพราะทุกครั้งที่เราเปิด channel ทาง LSP เค้าจะต้องส่งธุรกรรมเข้า block ซึ่งจะต้องเสีย fee เพิ่มกว่าเรทจริงอีกหน่อย ทำให้บางทีค่าเปิด channel โดนอัดราคาเพิ่มจนสูงกว่าค่าบริการของ LSP นั้นๆอีก อย่างของผมที่ซื้อกับ Lnserver เค้าจะเก็บเริ่มต้นที่ 5000 sats สำหรับ channel ขนาด 2,000,000 sats แล้วจะบวก commit fee ไปอีก 1345 sats ที่เรท 2 sats/vB รวมกันเป็น 6345 sats ที่จ่ายไป
โน้ตที่สองที่ต้องเตรียมไว้ด้วยก็คือ reserve fund โดยผมจะเรียกอีกอย่างว่าเป็นค่าประกัน channel ซึ่งค่าประกันตรงนี้จะเก็บไว้เป็นขั้นต่ำของ channel นั้นๆฝ่ายละ 1% แล้วจะล็อกตายเก็บไว้เอาออกมาใช้จ่ายไม่ได้จนกว่าจะปิด channel ถ้าไม่จ่ายค่าประกันตรงนี้ เราก็จะรับเข้าและจ่ายออกจากฝั่งเราไม่ได้ หมายความว่า channel ขนาด 2,000,000 sats ก็ต้องมีเงินประกันเข้าไปด้วยจากฝั่งผม 20,000 sats ถึงจะใช้งานได้

-----------
ใครที่สนใจอ่านเพิ่มเติม ผมมีเว็บข้อมูลเกี่ยวกับ Lightning liquidity มาแนะนำ อันนี้แหละที่ผมอ่านแล้วเพิ่งมารู้เกี่ยวกับ channel reserve รวมถึงเรื่องอื่นๆที่น่ารู้เกี่ยวกับวงบริวารและการออกแบบระบบที่เกี่ยวกับ Bitcoin
https://bitcoin.design/guide/how-it-works/liquidity/#what-is-the-reserve-amount