Wake on LAN สามารถทำงานกับการเชื่อมต่อ VPN ได้หรือไม่?


15

เป็นความจริงหรือไม่ที่เราไม่อนุญาตให้เครื่องใด ๆ หลับซึ่งอาจต้องเข้าถึงการเชื่อมต่อ VPN

(ฉันถามสิ่งนี้เกี่ยวกับข้อผิดพลาดของเซิร์ฟเวอร์เนื่องจากเซิร์ฟเวอร์ VPN เกี่ยวกับพีซีของผู้ใช้ปลายทางกำลังหลับอยู่)

คำตอบ:


10

กระทู้เก่า แต่ฉันต้องการที่จะพูดสอดเพราะมันยังคงเป็นผลการค้นหายอดนิยมสำหรับ "wol over vpn"

ใช่ WOL แพ็คเก็ตเวทย์มนตร์ถูกกำหนดไว้ภายในข้อ จำกัด ของเลเยอร์ 2 แต่นี่ไม่ได้หมายความว่ามันไม่สามารถอยู่ในเครือข่ายและการขนส่งโปรโตคอลเอนทิตีซึ่งสามารถใช้ในการกำหนดเส้นทางผ่าน VPN เหตุผลนี้เป็นลำดับ "วิเศษ" ได้ทุกที่ภายใน payload ดังนั้นโดยพื้นฐานแล้วมันจะกลายเป็นเรื่องของการรับแพ็คเก็ตที่ใช้เส้นทางได้ไปยังโฮสต์เป้าหมายด้วยลำดับ "เวทมนต์" ภายในเพย์โหลด

การนำไปใช้งานส่วนใหญ่ของเวทย์มนตร์แพ็คเก็ตใช้พอร์ต UDP 9 แม้ว่าสิ่งนี้จะไม่สำคัญตราบใดที่มันถูกกำหนดเส้นทางอย่างถูกต้องและส่งในโดเมนออกอากาศเดียวกันกับคอมพิวเตอร์เป้าหมาย ตราบใดที่ไคลเอนต์ VPN มีเส้นทางที่ถูกต้องก็สามารถส่งแพ็กเก็ตออกอากาศเช่น 192.168.1.255 (ที่อยู่บรอดคาสต์) ไปยังเกตเวย์ VPN ผ่านอินเทอร์เน็ตได้อย่างถูกต้อง

ดังนั้นการกำหนดเส้นทางมันตรงไปตรงมาจริงๆปัญหาอาจอยู่กับการออกอากาศอย่างถูกต้องจากเกตเวย์ VPN เป้าหมาย นี่หมายถึงการกำหนดค่าเกตเวย์ VPN / การค้นหาตัวเลือกเพื่อส่งต่อการรับส่งข้อมูลออกอากาศจากไคลเอนต์ระยะไกล VPN ไปยังเครือข่ายท้องถิ่น


4

โดยทั่วไปแล้วไม่ได้เพราะ "MagicPacket" นั้นอยู่ที่เลเยอร์ 2 ซึ่งไม่สามารถกำหนดเส้นทางได้หากไม่ได้รับความช่วยเหลือจากผู้ส่ง (เช่นตัวช่วย IP)


ผมก็หวังว่าเซิร์ฟเวอร์ VPN จะมีการเรียงลำดับของการสร้างบางอย่างใน surport สำหรับนี้ ...
เอียน Ringrose

โดยทั่วไปนั่นไม่ใช่ "บรรทัดฐาน" ของไคลเอนต์ VPN จากเซสชัน VPN คุณสามารถตั้งค่าระบบ / อุปกรณ์ตัวกลางเพื่อช่วยในการเปิดตัว "MagicPacket" กับระบบ / อุปกรณ์เป้าหมาย
user48838

1

มีวิธีแฟนซีในการสร้างอุโมงค์ Layer 2 ด้วย SSH และด้วย WOL นี้ควรทำงานได้ดี ดังนั้นฉันเห็นเหตุผลที่ต้องทำโดยไม่ต้องส่งเครื่องไปนอน

จากพื้นฐานของ @slm พูดถึงฉันรวมส่วนสำคัญของแหล่งข้อมูลด้านล่าง

วิชาบังคับก่อน:

1) คอมพิวเตอร์ทั้งสองเครื่องต้องเปิดใช้งานการลงชื่อเข้าใช้รูท (ขออภัย - ข้อมูลรับรองของคุณในคอมพิวเตอร์ทั้งสองเครื่องจะต้องอนุญาตให้คุณสร้างอุปกรณ์ TAP) ซึ่งหมายความว่า: ในระดับระบบรูทมีรหัสผ่าน

2) ในไฟล์ sshd_config ของโฮสต์ที่รัน ssh daemon ตัวเลือก PermitTunnel ใช่และ PermitRootLogin ใช่จะถูกตั้งค่า

3) การส่งต่อ ip ถูกเปิดใช้งานในเคอร์เนล ใช้คำสั่ง sysctl เพื่อตั้งค่าตัวเลือกนี้: sysctl -w net.ipv4.ip_forwarding = 1; นอกจากนี้ให้เพิ่มบรรทัด net.ipv4.ip_forwarding = 1 ไปยังไฟล์ /etc/sysctl.conf ของคุณเพื่อให้การตั้งค่าดำเนินการหลังจากที่คุณรีบูท ทำสิ่งนี้กับคอมพิวเตอร์ทั้งสองเครื่อง

4) คุณได้ติดตั้งแพ็กเกจ bridge-utils หรือมีคำสั่ง brctl สำหรับคอมพิวเตอร์ทั้งสองเครื่อง

สร้างอุโมงค์:

ssh -w 1: 1 -o Tunnel = ชื่อโฮสต์อีเธอร์เน็ต

ตัวเลือก -w ตั้งชื่อของอุปกรณ์ TAP บนโฮสต์ใด ๆ (ที่นี่ tap1 จะถูกสร้างขึ้นที่ปลายทั้งสอง)

อ็อพชัน -o ใช้สำหรับระบุตัวเลือกไฟล์กำหนดค่าบนบรรทัดคำสั่ง เราใช้ Tunnel = ethernet เพื่อตั้งค่าอุโมงค์ Layer 2

แบบฟอร์มนี้จะเปิดเซสชัน ssh ไว้ด้านหน้า หากคุณต้องการปล่อยเชลล์หลังจากสร้างอุโมงค์คุณสามารถใช้ตัวเลือก -f เพื่อบอกให้แยกเข้าไปในพื้นหลัง มันต้องการคำสั่งให้แยก แต่คุณสามารถใช้คำสั่งดัมมี่เช่นจริงเพื่อให้มันทำงานได้ คุณสามารถใช้ฟังก์ชั่นนี้เพื่อตั้งค่าบริดจ์บนรีโมทปลายทางได้ แต่ตอนนี้ฉันยังไม่ได้เข้าใช้ ดังนั้นจะมีลักษณะเช่นนี้:

ssh -f -w 1: 1 -o Tunnel = ชื่อโฮสต์อีเธอร์เน็ตจริง

เพิ่มอุปกรณ์ TAP เข้ากับบริดจ์:

brctl addbr br0; brctl addif tap1; ifconfig tap1 ขึ้นไป; ifconfig br0 up

คุณเรียกใช้สิ่งนี้กับโฮสต์ทั้งสอง (โปรดสังเกตว่าฉันไม่ได้กำหนด IP) brctl เป็นคำสั่งที่ใช้เพื่อจัดการอุปกรณ์บริดจ์ brctl addbr เพิ่มบริดจ์ br0 และคำสั่ง addif รวมอุปกรณ์ tap1 เข้ากับมัน

ถัดไปคือการเพิ่มอินเตอร์เฟซอีเทอร์เน็ตแบบฟิสิคัลให้กับอุปกรณ์บริดจ์ วิธีที่คุณต้องการทำสิ่งนั้นจะแตกต่างกันดังนั้นฉันจะไปดูสองสามสถานการณ์ สถานการณ์แรกคือที่ที่ VPN ของคุณอยู่ในเครือข่ายย่อยเดียวกัน (กล่าวคือไม่มีการกำหนดเส้นทางระหว่างพวกเขา) และสถานการณ์ที่สองจะอยู่บนอินเทอร์เน็ต

ไร้ยางอายขโมยจาก: http://la11111.wordpress.com/2012/09/24/layer-2-vpns-using-ssh/


ยินดีต้อนรับสู่ Server Fault! โดยทั่วไปแล้วเราชอบคำตอบในเว็บไซต์เพื่อให้สามารถยืนได้ด้วยตัวเอง - ลิงค์นั้นดี แต่ถ้าลิงค์นั้นเคยคำตอบจะมีข้อมูลเพียงพอที่จะเป็นประโยชน์ โปรดพิจารณาแก้ไขคำตอบของคุณเพื่อรวมรายละเอียดเพิ่มเติม ดูคำถามที่พบบ่อยสำหรับข้อมูลเพิ่มเติม
slm

ฉันจะหา sshd_config ได้ที่ไหนในระบบ windows 7
Ian Ringrose

@IanRingrose ฉันไม่รู้เลยว่าฉันทำงานกับ Linux เท่านั้น
Sir l33tname

1

ได้คุณสามารถส่งแพ็กเก็ต WoL ไปยังที่อยู่ออกอากาศในเครือข่ายเป้าหมายได้เพียงส่งไปยังที่อยู่ IP ของเครื่องที่คุณต้องการปลุก โปรแกรมที่ทดสอบด้วย PPTP VPN:


0

ฉันเห็นด้วยกับผู้ใช้ 48838 - ตามคำนิยามแพ็คเก็ตเวทย์มนตร์ถูกส่งผ่านเครือข่ายย่อยในท้องถิ่นเท่านั้น อย่างไรก็ตามก่อนหน้านี้ฉันเคยใช้สคริปต์ที่เขียนโดย jpo ที่ทำงานจากซับเน็ตอื่นผ่านเราเตอร์ปกติ ลองนี้ - YMMV

http://gsd.di.uminho.pt/jpo/software/wakeonlan/


0

จริงๆแล้วคำตอบคือใช่

ฉันใช้ WOL ผ่าน PPTP VPN ได้สำเร็จโดยใช้แอพนั้น: https://play.google.com/store/apps/details?id=com.benfinnigan.wol&hl=pl


ยินดีต้อนรับสู่ Server Fault! ในขณะที่สิ่งนี้อาจตอบคำถามในทางทฤษฎีมันก็ควรที่จะรวมส่วนสำคัญของคำตอบที่นี่และให้ลิงค์สำหรับการอ้างอิง
slm

0

ฉันได้ทำการทดสอบและคำตอบคือใช่ :)

ฉันพบเครื่องมือบนอินเทอร์เน็ตที่ส่งแพ็คเก็ต WOL แบบ uni-cast ไปยังโฮสต์ที่ต้องการโดยหลีกเลี่ยงการส่งแพ็กเก็ตออกอากาศผ่านปัญหาเราเตอร์

จุดหนึ่งที่คุณต้องระวังด้วยวิธีนี้คุณต้องใส่ Static arp entry บนเราเตอร์เนื่องจากโฮสต์จะปิดและจะไม่ตอบสนองต่อคำขอ ARP ของเราเตอร์ ไชโย!


ฟังดูเหมือนจะใช้งานได้และยังดูเหมือนว่าแพ็คเก็ตเหล่านั้นจะออกอากาศได้อย่างมีประสิทธิภาพ รายการ ARP แปลจาก IP เป็น MAC เท่านั้น ไม่ได้บอกสวิตช์ที่พอร์ต MAC เปิดอยู่ และหากโฮสต์ออฟไลน์สวิตช์อาจไม่ทราบว่า MAC อยู่ที่ไหนดังนั้นจึงจะมีการถ่ายทอด แต่อย่างน้อยไม่มีโฮสต์ใดที่จะส่งการตอบกลับดังนั้นมันควรจะดี
kasperd

ข้อมูลบางอย่างเกี่ยวกับวิธีค้นหาเครื่องมือที่คุณใช้สามารถปรับปรุงคำตอบนี้ได้
kasperd
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.