พื้นฐาน CLI และการติดตั้ง
9 คำตอบเรียนรู้ว่า PandaVPN CLI คืออะไร แตกต่างจากแอปเดสก์ท็อปอย่างไร และจะติดตั้งอย่างไร
Q Panda CLI คืออะไร?
Panda CLI คือไคลเอนต์บรรทัดคำสั่งของ Panda และรองรับการทำงานต่อไปนี้ผ่านเทอร์มินัล:
- เข้าสู่ระบบและจัดการบัญชี
- รีเฟรชโหนดและเชื่อมต่อโหนด
- สลับระหว่างโหมด PandaVPN / Proxy / WireGuard / Auto
- กำหนดค่าพร็อกซีของระบบ
- Split rules สำหรับการแบ่งทราฟฟิก
- กำหนดค่า Split DNS
- การป้องกัน Kill-switch
- Auto-connect
- บันทึกและการวินิจฉัย
เหมาะสำหรับผู้ใช้ทดสอบภายใน นักพัฒนา ผู้ใช้ขั้นสูง และสถานการณ์การทดสอบที่ต้องใช้การทำงานแบบสคริปต์
Q Panda CLI กับไคลเอนต์เดสก์ท็อปแตกต่างกันอย่างไร?
Panda CLI ทำงานผ่านบรรทัดคำสั่ง จึงเหมาะกว่าสำหรับ:
- การทดสอบอัตโนมัติ
- การแก้ไขปัญหาระยะไกล
- การเชื่อมต่อผ่านสคริปต์
- การดูข้อมูลวินิจฉัยโดยละเอียด
- การตรวจสอบพฤติกรรมระดับล่าง เช่น Kill-switch, DNS, การกำหนดเส้นทาง และพร็อกซีของระบบ
ไคลเอนต์เดสก์ท็อปเหมาะกว่าสำหรับการใช้งานแบบกราฟิกประจำวันของผู้ใช้ทั่วไป
หมายเหตุ: ไม่แนะนำให้ไคลเอนต์เดสก์ท็อป Qt รุ่นเก่าและ CLI จัดการ VPN / พร็อกซีของระบบพร้อมกัน เพื่อหลีกเลี่ยงการเขียนทับการกำหนดค่าซึ่งกันและกัน
Q ทำไม Panda CLI จึงต้องมี daemon / service?
ความสามารถบางอย่างต้องใช้สิทธิ์ระดับระบบ เช่น:
- สร้างอินเทอร์เฟซเครือข่าย TUN / WireGuard
- แก้ไข DNS
- ตั้งค่าพร็อกซีของระบบ
- ใช้ Kill-switch
- ซ่อมแซมเส้นทาง
- จัดการ packet VPN runtime
ดังนั้น CLI จะดำเนินการเหล่านี้ผ่าน daemon / service ที่สอดคล้องกับแพลตฟอร์ม
รูปแบบ daemon บนแพลตฟอร์มต่าง ๆ:
| แพลตฟอร์ม | รูปแบบ daemon |
|---|---|
| macOS | LaunchDaemon / privileged helper |
| Linux | systemd service |
| Windows | Windows Service |
Q วิธีติดตั้งบน Windows / macOS / Linux แตกต่างกันอย่างไร?
ความแตกต่างหลักคือ: บน Windows และ macOS โดยปกติ service จะถูกติดตั้งโดยอัตโนมัติผ่านแพ็กเกจติดตั้ง ส่วนบน Linux ผู้ใช้มักต้องเรียกใช้ sudo panda service install ด้วยตนเอง
| แพลตฟอร์ม | วิธีติดตั้งที่แนะนำ | ต้องติดตั้ง service ด้วยตนเองหรือไม่ |
|---|---|---|
| Windows | แพ็กเกจติดตั้ง | โดยปกติไม่ต้อง; แพ็กเกจติดตั้งจะยกระดับสิทธิ์และลงทะเบียน Windows Service |
| macOS | แพ็กเกจติดตั้ง .pkg | โดยปกติไม่ต้อง; แพ็กเกจติดตั้งจะติดตั้ง LaunchDaemon / helper |
| Linux | binary + systemd service | ต้องเรียกใช้ sudo panda service install |
บน Windows เฉพาะกรณีที่ไม่ได้ใช้แพ็กเกจติดตั้งและวางไฟล์ binary ด้วยตนเองเท่านั้น จึงต้องเรียกใช้คำสั่งต่อไปนี้ใน PowerShell แบบผู้ดูแลระบบ:
panda service install windows
บน macOS จำเป็นเฉพาะระหว่าง development และ debugging เมื่อไม่ได้ใช้แพ็กเกจติดตั้ง .pkg หรือเมื่อ daemon ไม่เริ่มทำงานโดยอัตโนมัติ:
sudo panda start
บน Linux แนะนำให้ใช้:
sudo panda service install
panda service status
Q ขั้นตอนการติดตั้งสำหรับ Windows ARM64 และ AMD64 / x64 เหมือนกันหรือไม่?
เหมือนกัน ความแตกต่างหลักคือสถาปัตยกรรมของแพ็กเกจติดตั้งที่ดาวน์โหลด
| สถาปัตยกรรม | อุปกรณ์ที่เหมาะสม |
|---|---|
| Windows x64 / AMD64 | คอมพิวเตอร์ Windows ที่ใช้ Intel / AMD ส่วนใหญ่ |
| Windows ARM64 | อุปกรณ์ Windows on ARM |
ขั้นตอนการติดตั้ง คำสั่ง และวิธีจัดการบริการเหมือนกัน แพ็กเกจติดตั้งจะยกระดับสิทธิ์โดยอัตโนมัติและลงทะเบียน Windows Service
โหมดการเชื่อมต่อและการกำหนดเส้นทาง
10 คำตอบทำความเข้าใจโหมดการเชื่อมต่อ CLI ตัวเลือกเส้นทาง การเชื่อมต่ออัจฉริยะ โหนด และสถานะปัจจุบัน
Q Panda CLI รองรับโหมดใดบ้าง?
รองรับหลัก ๆ ดังนี้:
| โหมด | คำอธิบาย |
|---|---|
auto |
โหมดเริ่มต้น แนะนำ runtime ตาม API / metadata ของ node และหากล้มเหลวจะ fallback ไปยัง PandaVPN global |
proxy |
พร็อกซีภายในเครื่อง SOCKS5 / HTTP / PAC |
pandavpn |
PandaVPN packet VPN / TUN runtime |
wireguard |
WireGuard packet VPN |
การตั้งค่าที่ใช้บ่อย:
panda mode auto
panda mode pandavpn global
panda mode proxy global
panda mode wireguard
ปัจจุบันไม่แนะนำให้แสดง openvpn เป็นโหมดหลักในเอกสารผู้ใช้
Q ควรเลือก auto, proxy, pandavpn และ wireguard อย่างไร?
คำแนะนำ:
| สถานการณ์ | โหมดที่แนะนำ |
|---|---|
| ผู้ใช้ใหม่ / การเชื่อมต่อประจำวัน | auto |
| ต้องการใช้ global VPN แบบคงที่ | pandavpn global |
| ต้องการให้เฉพาะเบราว์เซอร์หรือ system proxy ผ่าน Panda | proxy |
| ต้องการ Kill-switch | auto, pandavpn หรือ wireguard |
| Node มี WireGuard metadata | auto หรือ wireguard |
| ต้องการตรวจสอบ Split rules / Split DNS เชิงลึก | pandavpn |
หมายเหตุ: mode proxy กับ Kill-switch ใช้ร่วมกันไม่ได้
Q mode auto คืออะไร?
mode auto คือโหมดเริ่มต้นในเวอร์ชันใหม่
พฤติกรรมของโหมดนี้คือ:
- API node / smart connect จะเลือก runtime ตามลำดับความสำคัญจาก
meta.protocol; - หากแนะนำ WireGuard ระบบจะลองใช้ WireGuard ก่อน;
- หาก WireGuard metadata, การจัดสรรที่อยู่, การเริ่มต้น runtime, handshake หรือการตรวจสอบการเชื่อมต่อล้มเหลว ระบบจะ fallback ไปยัง PandaVPN global ที่ compile จาก SS payload;
SS,OPENVPN, โปรโตคอลที่ไม่รู้จักหรือขาดหายจะใช้ PandaVPN global เป็น fallback;mode autoไม่รับพารามิเตอร์ policy และ runtime ที่ resolve ได้จะเป็น global เสมอ
แนะนำสำหรับผู้ใช้ใหม่:
panda mode auto
panda connect
Q global, gfwlist, direct-region และ proxy-region แตกต่างกันอย่างไร?
| Policy | ความหมาย |
|---|---|
global | ทั้งหมดผ่าน proxy / tunnel |
gfwlist | default direct; รายการที่ตรงกับ GFWList จะผ่าน proxy / tunnel |
direct-region in | default proxy / tunnel; เมื่อรหัสประเทศสองตัวอักษร in ตรงกัน จะเชื่อมต่อแบบ direct |
proxy-region us | default direct; เมื่อรหัสประเทศสองตัวอักษร us ตรงกัน จะผ่าน proxy / tunnel |
direct-region คือรูปแบบที่แนะนำ; bypass-region / bypass เป็น alias เพื่อความเข้ากันได้
ตัวอย่าง:
panda mode pandavpn direct-region in
เทียบเท่ากับ alias เพื่อความเข้ากันได้:
panda mode pandavpn bypass-region in
Q คำสั่ง split แบบยาวที่ระบุชัดเจนของ PandaVPN คืออะไร?
เวอร์ชันใหม่รองรับรูปแบบ split profile ที่สมบูรณ์ยิ่งขึ้น:
panda mode pandavpn split default direct proxy-region <cc>
panda mode pandavpn split default proxy direct-region <cc>
token ที่พบบ่อย:
| Token | ความหมาย |
|---|---|
default direct |
หากไม่ตรงกับ rule ใด ให้เชื่อมต่อโดยตรงเป็นค่าเริ่มต้น |
default proxy |
หากไม่ตรงกับ rule ใด ให้ผ่าน tunnel เป็นค่าเริ่มต้น |
proxy-region <cc> |
region ที่ระบุจะผ่าน tunnel |
direct-region <cc> |
region ที่ระบุจะเชื่อมต่อโดยตรง |
gfwlist |
เปิดใช้งาน GFWList source |
direct-lan |
LAN เชื่อมต่อโดยตรง |
proxy-lan |
LAN ก็ผ่าน tunnel ด้วย |
custom-rules |
เปิดใช้งาน split rules แบบกำหนดเอง |
exclude-custom-rules |
ไม่โหลด split rules แบบกำหนดเอง |
ตัวอย่าง:
panda mode pandavpn split default direct proxy-region us custom-rules
panda mode pandavpn split default proxy direct-region in direct-lan custom-rules
ไม่แนะนำให้แสดงคำสั่งยาวในเอกสารสำหรับผู้เริ่มต้น เหมาะสำหรับใส่ไว้ในเอกสาร split ขั้นสูงมากกว่า
Diagnostics and logs
9 คำตอบใช้คำถามเหล่านี้สำหรับแพทย์ การซ่อมแซม บันทึก พร็อกซีระบบ กฎการแบ่งแยก DNS และลักษณะการทำงาน Kill-switch
Q panda doctor ใช้ทำอะไร?
doctor เป็นคำสั่งวินิจฉัยแบบ read-only ใช้สำหรับดูสถานะสำคัญปัจจุบันของ Panda CLI
panda doctor
panda doctor --json
รูปแบบสั้น:
panda do
เน้นตรวจสอบ:
runtime
kill_switch
selected_node
vpn_dns
dns_lockdown
split_policy
system_proxy_state
vpn_routes
last_error
Q panda trace คืออะไร?
trace ใช้สำหรับดูว่า target หนึ่งจะใช้ rule, DNS action และ route ใด
panda trace example.com:443
panda trace 8.8.8.8:53 --json
หมายเหตุ: ความสามารถ trace แบบเต็มต้องใช้ active PandaVPN packet runtime หากไม่มี runtime ที่ compatible จะทำได้เพียง validation แบบจำกัด หรือ fallback ไปยัง legacy trace
Q ทำไม Panda daemon สองตัวจึงแย่ง route กัน?
โดยทั่วไปเกิดจากมีการติดตั้ง service / LaunchDaemon อย่างเป็นทางการแล้ว และยังเคยรันด้วยตนเอง:
sudo panda start
sudo panda start จะเริ่ม daemon แบบ unmanaged / อยู่นอกการจัดการ ซึ่งอาจจัดการสิ่งต่อไปนี้พร้อมกับ daemon อย่างเป็นทางการ:
- VPN route
- DNS
- TUN
- system proxy
- Kill-switch
หลักการแก้ไขคือ: เก็บไว้เพียง daemon เดียว
วิธีจัดการที่ใช้บ่อยบน macOS / Linux:
panda disconnect
panda kill-switch off
sudo panda stop
panda repair
panda doctor
บน Linux หากใช้ systemd service ให้ restart service อย่างเป็นทางการหลังจากนั้น:
sudo panda service restart
panda doctor
บน macOS หากติดตั้งด้วย .pkg โดยทั่วไปให้ LaunchDaemon / helper จัดการ daemon และอย่าใช้ sudo panda start เป็นวิธี startup ประจำวันในระยะยาว
Q จะออกจาก Panda daemon ได้อย่างไร?
หากต้องการเพียง disconnect VPN ไม่จำเป็นต้องออกจาก daemon:
panda disconnect
panda kill-switch off
หากต้องการหยุด daemon จริง ๆ:
sudo panda stop
ยืนยัน:
panda status
หากแสดง panda daemon unavailable หมายความว่า main daemon หยุดแล้ว
หมายเหตุ: LaunchDaemon / helper ที่ติดตั้งผ่าน macOS .pkg อาจถูกจัดการโดย system ไม่แนะนำให้ผู้ใช้ทั่วไปหยุด service ด้วยตนเองบ่อย ๆ
Q จะดู logs ได้อย่างไร?
panda log
panda log --lines 200
panda log --all
ล้าง logs:
panda log clear
เปิด debug ชั่วคราว:
panda log level debug dns,tcp --ttl 10m
คืนค่า default:
panda log level reset
Proxy and repair
5 คำตอบใช้คำถามเหล่านี้สำหรับแพทย์ การซ่อมแซม บันทึก พร็อกซีระบบ กฎการแบ่งแยก DNS และลักษณะการทำงาน Kill-switch
Q panda repair กับ panda proxy repair แตกต่างกันอย่างไร?
panda repair ครอบคลุมมากกว่า และอาจซ่อมแซม:
- VPN route
- DNS snapshot
- Kill-switch guard
- สถานะที่เกี่ยวข้องกับ system proxy
panda proxy repair จะซ่อมแซม system proxy drift ของผู้ใช้ปัจจุบันเป็นหลัก
panda repair
panda proxy repair
Q system proxy ถูกเปิดไว้เป็นค่าเริ่มต้นหรือไม่?
สำหรับ Fresh install ค่าเริ่มต้นคือ proxy system-proxy on
หากผู้ใช้เคยบันทึก off ไว้อย่างชัดเจน จะคงค่า configuration นั้นไว้
ดูหรือตั้งค่า:
panda proxy system-proxy on
panda proxy system-proxy off
panda proxy system-proxy lock-on
หมายเหตุ: ใน mode auto, pandavpn และ wireguard VPN runtime จะ ignore system proxy preference ที่ persist ไว้; VPN companion proxy ยังคงใช้ได้และใช้ scoped egress
Q ทำไม system proxy บน Windows จึงไม่มีผล?
Windows system proxy คือการตั้งค่า HKCU WinINET ของผู้ใช้ปัจจุบัน และต้องใช้ per-user user-agent
หากคุณอยู่ใน SSH หรือ non-interactive session, proxy repair อาจไม่สามารถเริ่ม user-agent โดยอัตโนมัติได้เสมอไป
แนะนำ:
panda proxy status
panda proxy repair
panda doctor
หากยังไม่มีผล ให้ลองอีกครั้งใน desktop login session
Q ทำไม system proxy บน Linux จึงแสดงเป็น unsupported?
Linux Phase 1 รองรับ GNOME gsettings เป็นหลัก
Environment อย่าง KDE / XFCE อาจแสดงเป็น unsupported
สิ่งนี้ไม่ได้จำเป็นต้องกระทบ PandaVPN packet runtime แต่อาจกระทบประสบการณ์ของ system proxy mode
Q ทำไม Kill-switch จึงไม่สามารถใช้ร่วมกับ proxy mode ได้?
ความหมายของ Kill-switch คืออนุญาตให้ทราฟฟิกผ่าน TUN เท่านั้น ส่วนทราฟฟิกปกติอื่น ๆ จะถูกบล็อก
proxy mode เป็น standalone local proxy mode ไม่มี packet VPN / TUN และไม่มีการป้องกัน DNS และ routing ที่เทียบเท่ากัน ดังนั้น Kill-switch จึงไม่รองรับ standalone proxy mode
เมื่อต้องการ Kill-switch ให้ใช้:
panda mode auto
panda kill-switch on
หรือ:
panda mode pandavpn global
panda kill-switch on
หรือ:
panda mode wireguard
panda kill-switch on
Split rules and Kill-switch
11 คำตอบใช้คำถามเหล่านี้สำหรับแพทย์ การซ่อมแซม บันทึก พร็อกซีระบบ กฎการแบ่งแยก DNS และลักษณะการทำงาน Kill-switch
Q Auto-connect หมายถึงการเชื่อมต่อใหม่อัตโนมัติหลังจากการเชื่อมต่อหลุดหรือไม่?
ไม่ใช่
Auto-connect ครอบคลุมหลัก ๆ คือ best-effort connect ตอน daemon / service เริ่มทำงาน และ pending retry เมื่อตอน startup ยังไม่มี network ชั่วคราว
เปิด:
panda config auto-connect on
ปิด:
panda config auto-connect off
ไม่ใช่กลไก runtime automatic reconnect ทั่วไป
Q Split rules คืออะไร?
Split rules ใช้เพื่อกำหนดให้บาง domain, keyword, regex หรือ IP ไปผ่าน proxy, direct หรือ block
ไฟล์ rules:
split/rules/proxy.txt
split/rules/direct.txt
split/rules/block.txt
Commands ที่ใช้บ่อย:
panda split rules list
panda split rules add proxy suffix:github.com
panda split rules add direct ip-cidr:10.0.0.0/8
panda split rules add block keyword:adservice
Q หลังจากเข้าสู่ระบบ pending auto-connect จะถูก trigger โดยอัตโนมัติหรือไม่?
ข้อจำกัดที่ทราบในปัจจุบัน: หลังจาก login แล้ว pending auto-connect ที่รอ retry จะไม่ถูก wake โดยอัตโนมัติ
แนะนำให้รันเองหลังจาก login:
panda connect
Q Split rules รองรับ syntax ใดบ้าง?
- Pattern
- Bare domain
- ตัวอย่าง
example.com- ความหมาย
- Suffix match
- Pattern
domain:- ตัวอย่าง
domain:api.example.com- ความหมาย
- Exact host
- Pattern
suffix:- ตัวอย่าง
suffix:google.com- ความหมาย
- Suffix match
- Pattern
- ตัวอย่าง
- ความหมาย
- google.com
- Suffix match
- Pattern
keyword:- ตัวอย่าง
keyword:netflix- ความหมาย
- Substring match
- Pattern
regexp:- ตัวอย่าง
regexp:.*\.cdn\.example\.com- ความหมาย
- Go regex
- Pattern
ip-cidr:- ตัวอย่าง
ip-cidr:10.0.0.0/8- ความหมาย
- IP rule
Q หลังจากเปลี่ยน Split DNS แล้วต้อง reconnect หรือไม่?
โดยทั่วไปไม่จำเป็น การเปลี่ยนแปลง configuration ของ Split DNS จะถูก hot-load
Commands ที่ใช้บ่อย:
panda split dns status
panda split dns local set 223.5.5.5 114.114.114.114
panda split dns policy tunnel-only
panda split dns fake-ip on
หาก platform ไม่รองรับ local DNS sources บางรายการ doctor จะแสดง warning