เซิร์ฟเวอร์ VPN ของ Mac OS X 10.8: เลี่ยงผ่าน VPN สำหรับการรับส่งข้อมูล LAN (กำหนดเส้นทางทราฟฟิก LAN ไปยังการเชื่อมต่อรอง)


10

ฉันมีการตั้งค่าแปลก ๆ สำหรับเซิร์ฟเวอร์ VPN ที่มี OS X Mountain Lion โดยพื้นฐานแล้วมันถูกใช้เป็นบริดจ์ในการข้ามไฟร์วอลล์ของ บริษัท ของฉันไปยังการเชื่อมต่อเอ็กทราเน็ต - บางสิ่งที่ทีมของเราจำเป็นต้องมีการเข้าถึงอย่างอิสระจากภายนอกและการเปลี่ยนนโยบายไอทีเพื่อให้การรับส่งข้อมูลผ่านไฟร์วอลล์หลัก

การเชื่อมต่อเอ็กซ์ทราเน็ตมีให้ผ่านเราเตอร์ Wireless-N (เรียกว่า Wi-Fi X) เซิร์ฟเวอร์ Mac Mini ของฉันได้รับการกำหนดค่าด้วยการเชื่อมต่อกับเราเตอร์นี้เป็นการเชื่อมต่อหลักดังนั้นจึงสามารถเข้าถึงอินเทอร์เน็ตผ่านเราเตอร์ได้อย่างอิสระ การเชื่อมต่อกับอุปกรณ์นี้ในซับเน็ตทันทีสามารถทำได้ผ่านพอร์ต LAN แต่ภายนอกซับเน็ตมีความน่าเชื่อถือน้อยกว่า

ฉันสามารถกำหนดค่าเซิร์ฟเวอร์ VPN เพื่อให้ที่อยู่ IP ให้กับลูกค้าในช่วง 192.168.11.150-192.168.11.200 โดยใช้ทั้ง PPTP และ L2TP และฉันสามารถเชื่อมต่อกับเอกซ์ทราเน็ตผ่าน VPN โดยใช้มาตรฐาน Mac OS X VPN ลูกค้าในการตั้งค่าระบบอย่างไรก็ตามแปลกใจที่อยู่ในท้องถิ่น (ลองเรียกมันว่า internal.company.com) จะไม่ส่งคืนอะไรเลย

ฉันพยายามหลีกเลี่ยงข้อ จำกัด ของเซิร์ฟเวอร์ VPN โดยการตั้งค่าเส้นทางในการตั้งค่า VPN บริษัท ของเราใช้ 13.xxx สำหรับการรับส่งข้อมูลภายในทั้งหมดแทน 10.xxx ดังนั้นตารางเส้นทางจึงมีลักษณะดังนี้:

IP Address ---------- Subnet Mask ---------- Configuration
0.0.0.0               248.0.0.0              Private
8.0.0.0               252.0.0.0              Private
12.0.0.0              255.0.0.0              Private
13.0.0.0              255.0.0.0              Public
14.0.0.0              254.0.0.0              Private
16.0.0.0              240.0.0.0              Private
32.0.0.0              224.0.0.0              Private
64.0.0.0              192.0.0.0              Private
128.0.0.0             128.0.0.0              Private

ฉันรู้สึกว่าถ้าไม่มีอะไรเข้ามาที่นี่การรับส่งข้อมูลทั้งหมดจะถูกส่งผ่าน VPN เมื่อมีบางสิ่งเข้ามาเฉพาะทราฟฟิกที่ทำเครื่องหมายเพื่อผ่าน VPN เท่านั้นที่จะผ่าน VPN และทราฟฟิกอื่น ๆ ทั้งหมดจะขึ้นอยู่กับไคลเอ็นต์ที่จะเข้าถึงโดยใช้การเชื่อมต่อเริ่มต้นของตัวเอง นี่คือเหตุผลที่ฉันต้องทำเครื่องหมายเฉพาะทุกซับเน็ตยกเว้น 13.xxx เป็นส่วนตัว

ความสงสัยของฉันคือเนื่องจากฉันไม่สามารถเข้าถึงเซิร์ฟเวอร์ VPN จากนอกเครือข่ายย่อยในท้องถิ่นได้มันไม่ได้ทำการเชื่อมต่อกับเซิร์ฟเวอร์ DNS หลักและไม่สามารถเข้าถึงได้ในเครือข่ายขนาดใหญ่ ฉันคิดว่าการป้อนชื่อโฮสต์เช่น internal.company.com จะไม่ถูกส่งกลับไปยังไคลเอนต์เพื่อแก้ไขเนื่องจากเซิร์ฟเวอร์ไม่ทราบว่าที่อยู่ IP ตกอยู่ในช่วงสาธารณะเนื่องจากฉันสงสัย ไม่สามารถเข้าถึงได้ในขณะนี้) ซึ่งไม่สามารถเข้าถึงเซิร์ฟเวอร์ DNS เพื่อค้นหาข้อมูลเกี่ยวกับชื่อโฮสต์นั้น

สำหรับฉันแล้วดูเหมือนว่าตัวเลือกทั้งหมดของฉันสำหรับการแก้ไขปัญหาทั้งหมดนี้นำไปสู่โซลูชันประเภทเดียวกัน:

กำหนดวิธีเข้าถึง DNS ด้วยการเชื่อมต่อรองบนเซิร์ฟเวอร์ ฉันคิดว่าถ้าฉันสามารถทำบางสิ่งเพื่อให้เซิร์ฟเวอร์ของฉันรับรู้ว่าควรตรวจสอบเกตเวย์ท้องถิ่นของฉันด้วยเช่นกันว่าเซิร์ฟเวอร์ IP == 13.100.100.50 และเกตเวย์ IP == 13.100.100.1) จากที่นั่น Gateway IP สามารถบอกให้ฉันไปหาเซิร์ฟเวอร์ DNS ได้ที่ 13.1.1.1 และให้ข้อมูลเกี่ยวกับเครือข่ายภายในของฉัน ฉันสับสนมากเกี่ยวกับเส้นทางนี้ - ไม่แน่ใจว่าฉันทำอะไร

ฉันคิดเกี่ยวกับการพยายามทำฝั่งไคลเอ็นต์นี้ แต่นั่นก็ไม่สมเหตุสมผลเช่นกันเนื่องจากจะเพิ่มเวลาในการตั้งค่าฝั่งไคลเอ็นต์ นอกจากนี้ดูเหมือนว่าจะมีเหตุผลมากขึ้นที่จะแก้ปัญหาบนเซิร์ฟเวอร์ - ฉันสามารถกำจัดตารางเส้นทางของฉันทั้งหมดหรือเก็บไว้ - ฉันคิดว่าความแตกต่างเพียงอย่างเดียวก็คือปริมาณการใช้งานภายในจะผ่านเซิร์ฟเวอร์ - อาจเป็นภาระที่ไม่จำเป็น มัน.

มีความช่วยเหลืออะไรบ้าง? หรือฉันอยู่เหนือหัวของฉัน? ส่งต่อพร็อกซีหรือพร็อกซีแบบโปร่งใสเป็นตัวเลือกสำหรับฉันแม้ว่าฉันจะไม่รู้ว่าจะตั้งค่าแบบใดแบบหนึ่ง (ฉันรู้ว่า Google เป็นเพื่อนของฉัน)


บางทีการโพสต์อื่น ๆ นี้สามารถช่วยได้: superuser.com/questions/453766/…
Lorenzo Von Matterhorn

คำตอบ:


2

ฉันให้มันยิง:

ฉันไม่แน่ใจว่าจะได้รับปริมาณการเข้าชมเพียงใดเพื่อแก้ไขปัญหาของคุณ แต่การเปลี่ยนแปลงการตั้งค่าของคุณจะใช้เวลาเล็กน้อย ฉันสมมติว่า Mac ของคุณมีอินเทอร์เฟซเครือข่ายสองตัวลองเรียกพวกเขาว่า eth0 และ eth1 :-)

เราจะสมมติว่า eth0 เชื่อมต่อกับเครือข่ายงานของคุณและมีที่อยู่ภายใน (เครือข่ายงาน) ที่ 13.1.1.6, subnet 255.0.0.0

เราจะสมมติว่า eth1 เชื่อมต่อกับ WiFi X ของคุณและมีที่อยู่ (เครือข่าย eth1 <---> WiFi X) ที่ 192.168.1.10, subnet 255.0.0.0 เพื่อให้ทุกอย่างง่ายขึ้น

ฉันตั้งค่าเซิร์ฟเวอร์ VPN บน BSD และ Linux แต่ไม่ใช่ Mac แต่แนวคิดจะยังคงเหมือนเดิมคุณมีตัวเลือกฉันจะแสดงรายการหนึ่ง:

1) ตรวจสอบให้แน่ใจว่าตารางเส้นทางบน Mac มีรายการดังต่อไปนี้:

$>sudo route add 13.0.0.0/8 eth0

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

ฉันจะเลิกทำสิ่งที่คุณทำกับตารางการกำหนดเส้นทาง VPN ด้านบนและลองทำสิ่งนี้หากไม่ได้ (หวังว่า) มีอยู่แล้ว

ถ้าข้างต้นไม่ได้ทำโปรดอัปเดต w / ตารางเส้นทางและรายการที่อยู่ IP ของเซิร์ฟเวอร์ VPN ของคุณหรืออัปเดตด้วยการแก้ไขใด ๆ ที่คุณเจอ หวังว่านี่จะชี้คุณไปในทิศทางที่ถูกต้อง

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