ฉันจะกำหนดค่าบริดจ์เชื่อมต่อเครือข่ายจาก WiFi ไปยัง Ethernet ด้วย Debian ได้อย่างไร


12

ฉันใช้ Raspberry Pi โดยใช้ Raspbian ซึ่งเป็นเพียง Debian

ฉันต้องการเชื่อมต่อจากเราเตอร์เครือข่าย WiFi หลักที่เชื่อมต่อกับ Cox Cable กับเราเตอร์ที่มีสายเคเบิลของฉันที่นี่เพื่อให้เครือข่ายย่อยของฉันมีอินเทอร์เน็ตที่เชื่อถือได้

มันจะต้องเป็นสะพาน WiFi-to-Ethernet

ฉันได้ตั้งค่า / etc / Networks สำหรับที่อยู่คงที่สำหรับ USB wlan1 ที่มีอะแดปเตอร์ภายนอกและเสาอากาศ hi-gain wpa_supplicant ถูกกำหนดค่าให้ล็อกอินเข้าสู่เราเตอร์หลักอย่างถูกต้อง

ดังนั้นตอนนี้มันถูกตั้งค่าเพื่อให้ฉันสามารถเข้าสู่เครือข่ายที่เหมาะสมด้วยรหัสผ่านในภายนอก wlan1 ที่อยู่คงที่ตั้งอยู่ใน / etc / เครือข่าย Gateway และ Nameserver นั้นใช้ได้ ฉันสามารถท่องเว็บเพจเป็นต้น

การเชื่อมโยงที่ขาดหายไปคือการเชื่อมโยงสิ่งนี้กับพอร์ต eth0 เพื่อให้เราเตอร์ของฉันสามารถเชื่อมต่อได้เพื่อให้บริการกับซับเน็ต

ไม่จำเป็นต้องใช้บริการเครือข่ายพิเศษใด ๆ เช่นการกำหนดเส้นทางหรือ nat หรือ dhcp เป็นต้นเพียงแค่เชื่อมต่อกับบริดจ์ที่เรียบง่าย

ใครช่วยชี้ฉันในทิศทางที่ถูกต้องเพื่อให้สิ่งนี้เกิดขึ้นได้ไหม?


คุณลองใช้บริดจ์ขั้นพื้นฐานโดยตั้งค่า IP บนอุปกรณ์อีเธอร์เน็ตสร้างบริดจ์ด้วยbrctl addbr br0เพิ่มอุปกรณ์ทั้งสองไปที่บริดจ์ด้วยbrctl addif br0 deviceแล้วตั้งค่าที่อยู่อีเทอร์เน็ตและเส้นทางเดิมของคุณbr0หรือไม่
Julie Pelletier

คุณยังไม่ได้บันทึกวิธีกำหนดค่า wlan0 ของคุณ
Rui F Ribeiro

จุดดี. ฉันได้เพิ่มการแก้ไขเพื่อชี้แจง ฉันชอบคำตอบของคุณด้านล่าง มันตรงกันข้ามกับสิ่งที่ฉันพยายามทำ แต่ก็โอเคเพราะฉันคิดว่ามันมีข้อมูลเพียงพอที่จะทำให้ฉันเคลื่อนไหว ขอบคุณสำหรับการโพสต์
SDsolar

พบคำนี้และคำตอบแรกนั้นตลก 'ถูกต้องในวงกว้างเกินไป' - ดังนั้นสิ่งที่เชื่อมโยงนี้ต้องใช้เวทมนตร์ด้วย unix.stackexchange.com/questions/272146/…
SDsolar

อัปเดตจากอนาคต (ปลายปี 2018):ตั้งแต่ 2.6.33 คุณไม่สามารถเชื่อมโยง wlan กับจริยธรรมได้ คุณสามารถเชื่อมสะพาน wlan เป็น eth ได้ก็ต่อเมื่อคุณเปลี่ยนจากนั้น wlan0 เป็นโหมด 4addr ไดรเวอร์บางตัวไม่รองรับ คุณสามารถอ่านเพิ่มเติมได้ที่นี่
peterh - Reinstate Monica

คำตอบ:


9

สำหรับการกำหนดค่าบริดจ์จากอีเธอร์เน็ตไปเป็น WiFi มันง่ายพอ ๆ กับที่คุณทำใน/etc/network/interfaces:

auto eth0
allow-hotplug eth0
iface eth0 inet manual

auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual

auto br0
iface br0 inet static
bridge_ports eth0 wlan0
    address 192.168.1.100
    netmask 255.255.255.0

แทนที่ที่อยู่ IP ด้วยสิ่งที่เหมาะสมกับเครือข่ายของคุณมากกว่า

หากคุณต้องการให้มีการระบุแหล่งที่มาของ IP ผ่าน DHCP ให้เปลี่ยนเป็น:

auto br0
iface br0 inet dhcp
bridge_ports eth0 wlan0

หลังจากเปลี่ยน/etc/network/interfacesแล้วให้รีสตาร์ท Debian หรือทำ

service networking restart

จะเปิดใช้งานการกำหนดค่านี้

คุณจะต้องตรวจสอบให้แน่ใจว่าการกำหนดค่านี้จะbridge-utilsติดตั้ง คุณสามารถติดตั้งได้ด้วย:

sudo apt install bridge-utils

สำหรับข้อมูลเพิ่มเติมดู:

สะพาน UTILS-INTERFACES

อินเทอร์เฟซ wlan0 จะต้องมีการเชื่อมต่อกับ AP ระยะไกลของคุณดังนั้นการกำหนดค่านี้จะไม่ถูกใช้เป็นคำต่อคำ

หมายเหตุเพิ่มเติม: การเชื่อมโยง eth0 และ wlan0 เข้าด้วยกันหมายถึงเงื่อนไขที่ไม่ดีของคนธรรมดาที่ br0 จะนำเสนอตัวเองเป็นส่วนติดต่อแบบลอจิคัลเดียวที่รวมส่วนต่อประสานที่ทำส่วนหนึ่งของบริดจ์ โดยปกติแล้วการกำหนดค่าดังกล่าวจะเกิดขึ้นเมื่อทั้งขยายหรืออยู่ในเครือข่ายเดียวกัน


มันไม่ใช่สิ่งที่ตรงกันข้าม ถ้าคุณต้องการให้ไคลเอนต์ wifi เชื่อมต่อกับราสเบอร์รี่คุณต้อง hostapd ด้านบนของการกำหนดค่านี้; จริง ๆ แล้วฉันมี openwrt ที่ได้รับการกำหนดค่าที่นี่เพื่อทำสิ่งที่คุณถาม
Rui F Ribeiro

มันง่ายกว่ามันเป็นเรื่องของการกำหนดค่า wpa_supplicant
Rui F Ribeiro

ตกลง. ตอนนี้มีการตั้งค่าเพื่อให้ฉันสามารถเข้าสู่เครือข่ายที่เหมาะสมด้วยรหัสผ่านใน wlan1 ภายนอก ที่อยู่คงที่ตั้งอยู่ใน / etc / เครือข่าย Gateway และ Nameserver นั้นใช้ได้ มันเข้าสู่เราเตอร์ได้อย่างสมบูรณ์แบบ ฉันสามารถเบราส์เว็บเพจ ฯลฯ ลิงค์ที่ขาดหายไปคือเชื่อมระหว่างพอร์ตนี้กับพอร์ต eth0 เพื่อให้เราเตอร์ของฉันสามารถเชื่อมต่อได้
SDsolar

2
ฉันสับสนเล็กน้อย หากฉันลองตั้งค่าของคุณและsudo ifup -aฉันจะได้รับข้อความแสดงข้อผิดพลาดcan't add wlan0 to bridge br0: Operation not supportedหรือไม่ นี้ถูกกล่าวถึงอย่างกว้างขวางกับBridging wlan0 เพื่อ eth0 สิ่งที่ฉันขาดหายไปจากการตั้งค่าของคุณ?
Ingo

2
ไม่มีปัญหาในการเปิดคำถามใหม่ แต่ฉันไม่แน่ใจว่าเหมาะสมหรือไม่ ฉันคิดว่าคำตอบของคุณล้าสมัยและควรได้รับการแก้ไข เนื่องจากเคอร์เนล> = 2.6.33 คุณไม่สามารถเพิ่ม wifi ให้กับบริดจ์ (ยกเว้นเมื่อใช้ WDS) นี่คือสิ่งที่จะกล่าวถึงในBridging wlan0 เพื่อ eth0
Ingo
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.