Score:0

ตรวจหาเครื่องพิมพ์ในไคลเอนต์ VPN

ธง kg

ปัญหาขึ้นอยู่กับข้อจำกัดง่ายๆ:

เซิร์ฟเวอร์ที่เก็บตรรกะทางธุรกิจไม่ได้เชื่อมต่อกับเครื่องพิมพ์ในเครือข่ายเดียวกัน เครื่องพิมพ์อยู่ในเครือข่ายอื่นซึ่งไม่มีความเป็นไปได้ที่จะเปิดเผย IP สาธารณะ

สถาปัตยกรรมที่ฉันออกแบบมาจนถึงตอนนี้สามารถเห็นได้ ที่นี่.

LANS ทั้งสองแสดงอยู่ใน ส้ม และ สีน้ำเงินและมี VPN ในตัว สีแดง ซึ่งเชื่อมต่อทั้งสอง เนื่องจาก LAN สีน้ำเงิน เป็นไปไม่ได้ หากต้องการเปิดเผย IP สาธารณะ วิธีเดียวคือให้บริการ VPN จากเซิร์ฟเวอร์

ด้วยการตั้งค่านี้ เป็นไปได้หรือไม่ที่แอป Node.js ทำงานภายในเซิร์ฟเวอร์ ตรวจพบ เครื่องพิมพ์ที่ CUPS เผยแพร่ ในเครือข่ายสีน้ำเงิน/แดง?

ฉันเข้าใจว่า CUPS โฆษณาเครื่องพิมพ์ที่มีอยู่ผ่าน mDNSแต่เฉพาะในเครือข่ายเฉพาะที่เชื่อมต่ออยู่เท่านั้น ดังนั้นจึงมีความเป็นไปได้ที่แพ็คเกจ ไม่อาจเดินทาง จากไคลเอนต์ VPN ไปยังเซิร์ฟเวอร์จริง (เนื่องจาก พฤติกรรม VPN มาตรฐาน).

เป็นไปได้ไหมที่ฉันพยายามจะบรรลุ ฉันมีตัวเลือกอื่นใดอีกบ้าง

อัปเดต

ฉันพบวิธีการบางอย่างที่ควรค่าแก่การตรวจสอบ:

  • ใช้ VXLAN เพื่อเชื่อมต่อสองเน็ตเป็นหนึ่งเดียวและมัลติคาสต์ผ่านเครือข่าย
  • เปิดใช้งานมัลติคาสต์ผ่าน OpenVPN หรือ Wireguard
  • ทำซ้ำแพ็คเกจที่ส่งโดย mDNS บนอินเทอร์เฟซอื่น
  • สร้างบันทึกบริการพร็อกซีโดยใช้ DNS-SD

นี่คือข้อมูลที่เป็นประโยชน์:

ฉันคิดว่าคำตอบอยู่ที่หนึ่งหรือหลายอย่างรวมกัน

Michael Hampton avatar
cz flag
คุณสามารถเชื่อมต่อเซิร์ฟเวอร์กับเครื่องพิมพ์ระยะไกลได้ด้วยตนเองโดยใช้โปรโตคอลใดก็ได้ที่รองรับ (HP, IPP หรืออะไรก็ตาม)
kg flag
คุณช่วยยกตัวอย่างให้ฉันได้ไหม เป็นไปได้หรือไม่เนื่องจากเครือข่ายที่เครื่องพิมพ์ตั้งอยู่ไม่มี IP สาธารณะ
Michael Hampton avatar
cz flag
หากคุณสามารถเข้าถึงเครื่องพิมพ์บนเครือข่ายได้ คุณสามารถตั้งค่าได้ หากคุณไม่สามารถเข้าถึงเครื่องพิมพ์บนเครือข่ายได้ แสดงว่าคุณไม่ได้ทำอะไรเลย
kg flag
ใช่ ฉันอาจเข้าถึงเครื่องพิมพ์ผ่าน CUPS ในเครือข่ายอื่นได้ สิ่งที่ฉันต้องการคือการติดตั้งไลบรารีในแอป Node.js ที่ตรวจจับเครื่องพิมพ์ที่เผยแพร่ผ่าน mDNS บน VPN และมีลักษณะการทำงานแบบไดนามิก (ตรวจจับขึ้นและลง) แทน _hardcoding_ URL ของเครื่องพิมพ์ (x.x.x.x:631/Epson) ในแอป . นั่นคือเป้าหมายที่แท้จริงของฉันที่นี่
Michael Hampton avatar
cz flag
ฮาร์ดโค้ด? เราไม่ทำอย่างนั้นอีกแล้ว วางไว้ในไฟล์การกำหนดค่าหรือสภาพแวดล้อม
kg flag
ฉันรู้. ฉันหมายถึงว่าฉันไม่ต้องการทราบล่วงหน้าว่าเครื่องพิมพ์ใดอยู่ในเครือข่ายอื่น อาจเป็นหนึ่ง สอง หรือจำนวนใดก็ได้แนวคิดของฉันคือแอปจะตรวจหาเครื่องพิมพ์ที่มีอยู่ที่เผยแพร่โดยเซิร์ฟเวอร์ CUPS ผ่าน [this](https://wiki.archlinux.org/title/CUPS/Printer_sharing#DNS-SD_advertisement) หรือ [this](https:// wiki.archlinux.org/title/CUPS/Printer_sharing#Sharing_via_Internet_Printing_Protocol) จากนั้น แทนที่จะมี URL ในไฟล์สภาพแวดล้อม ฉันจะใช้การค้นพบบริการแบบไดนามิกจริง และแสดงเฉพาะเครื่องพิมพ์ที่พร้อมให้บริการแก่ลูกค้าเท่านั้น
kg flag
ดังนั้น สิ่งที่ฉันถามจริงๆ ก็คือว่ากลไกการแชร์นี้สามารถเดินทางผ่าน VPN และถูกตรวจพบโดยแอปหรือไม่
Michael Hampton avatar
cz flag
กลไกการค้นหาบริการเหล่านี้ทำงานเฉพาะในโดเมนการออกอากาศ 2 เลเยอร์เดียวเท่านั้น พวกเขาไม่สามารถกำหนดเส้นทางได้
kg flag
@MichaelHampton ฉันพบวิธีการบางอย่างที่อาจเป็นประโยชน์ในการเผยแพร่แพ็คเกจนี้ไปยังโฮสต์อื่น ฉันจะขุดต่อไป...

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา