วันนี้ เป็นการดึงดูดที่จะถือว่าทุกอุปกรณ์รองรับ Wi-Fi แต่ไม่ใช่อุปกรณ์ทั้งหมดจะสามารถเชื่อมต่ออินเทอร์เน็ตแบบไร้สายได้ นี่คือจุดที่ Raspberry Pi มีประโยชน์:โดยเปลี่ยนเป็นบริดจ์ Wi-Fi
หากคุณต้องการนำคอมพิวเตอร์เดสก์ท็อปเครื่องเก่าที่ใช้อีเทอร์เน็ตมาใช้ใหม่ และต้องการวิธีที่รวดเร็วและง่ายดายในการแปลงสัญญาณ Wi-Fi เป็นการเชื่อมต่ออีเทอร์เน็ต คุณสามารถใช้ Raspberry Pi ได้
เปลี่ยน Raspberry Pi ของคุณให้เป็นบริดจ์ Wi-Fi
ในบทช่วยสอนนี้ คุณจะได้เรียนรู้วิธีแปลง Raspberry Pi ของคุณให้เป็นบริดจ์ Wi-Fi ที่เชื่อมต่อกับเครือข่ายของคุณแบบไร้สายและแปลงสัญญาณนี้เป็นการเชื่อมต่อแบบมีสาย จากนั้น คุณสามารถต่ออุปกรณ์ใดๆ เข้ากับ Raspberry Pi ผ่านสายอีเทอร์เน็ต และอุปกรณ์นั้นจะสามารถเข้าถึงเครือข่ายของคุณได้ทันที
ก่อนที่จะไปต่อ ควรสังเกตว่าอุปกรณ์ที่เชื่อมต่อกับ Wi-Fi ผ่าน Raspberry Pi ของคุณไม่น่าจะได้รับความเร็วเท่ากับอุปกรณ์ที่เชื่อมต่อกับเครือข่ายของคุณโดยตรง อย่างไรก็ตาม หากไม่สามารถเชื่อมต่ออุปกรณ์เฉพาะอีเทอร์เน็ตกับเราเตอร์ได้ Raspberry Pi ก็เป็นวิธีที่รวดเร็ว ง่ายดาย และราคาไม่แพงนักในการทำให้อุปกรณ์นั้นออนไลน์
สิ่งที่คุณต้องการ
เพื่อให้บทแนะนำนี้สมบูรณ์ คุณจะต้อง:
- รุ่น Raspberry Pi พร้อมโมดูล Wi-Fi (Raspberry Pi zero, 3 และ 4) ที่ใช้ Raspberry Pi OS
- สายไฟที่เข้ากันได้กับ Raspberry Pi ของคุณ
- แป้นพิมพ์ภายนอกและวิธีการเชื่อมต่อกับ Raspberry Pi
- สาย HDMI หรือ micro HDMI ขึ้นอยู่กับรุ่น Raspberry Pi ของคุณ
- จอภาพภายนอก
- สายอีเทอร์เน็ต
อัปเดต Pi ของคุณ
หากยังไม่ได้ดำเนินการ ให้แนบแป้นพิมพ์ภายนอก จอภาพ และอุปกรณ์ต่อพ่วงอื่นๆ เข้ากับ Raspberry Pi จากนั้นต่อ Pi ของคุณเข้ากับแหล่งพลังงาน
ก่อนที่คุณจะเริ่มต้น ให้ตรวจสอบว่า Raspberry Pi ของคุณเป็นเวอร์ชันล่าสุด เปิด Terminal ใหม่โดยคลิกไอคอน "Terminal" ในแถบเครื่องมือของ Raspbian จากนั้นเรียกใช้คำสั่งต่อไปนี้:
sudo apt update && sudo apt -y upgrade
ตั้งค่าบริการเครือข่ายของคุณ:ติดตั้ง dnsmasq
ต่อไป ติดตั้ง dnsmasq
ซึ่งจัดให้มีการแคชระบบชื่อโดเมน (DNS) และเซิร์ฟเวอร์ Dynamic Host Configuration Protocol (DHCP) ใช้แพ็คเกจนี้เพื่อประมวลผลคำขอ DNS ซึ่งจะทำให้ Raspberry Pi ของคุณทำหน้าที่เป็นเราเตอร์ขนาดเล็กสำหรับอุปกรณ์อีเทอร์เน็ตเท่านั้น
ในการติดตั้ง dnsmasq ให้รันคำสั่งต่อไปนี้:
sudo apt install dnsmasq
กำหนดค่าการเชื่อมต่ออีเธอร์เน็ตของคุณ
ถัดไป ตั้งค่าอินเทอร์เฟซ eth0 เพื่อใช้ที่อยู่ IP แบบคงที่โดยแก้ไขไฟล์ “dhcpcd.conf” หากต้องการเปิดไฟล์การกำหนดค่านี้ ให้เรียกใช้คำสั่งต่อไปนี้:
sudo nano /etc/dhcpcd.conf
ไฟล์ “dhcpcd.conf” จะเปิดขึ้นในตัวแก้ไขข้อความ Nano ในไฟล์นี้ ให้เพิ่มสิ่งต่อไปนี้:
interface eth0 static ip_address=192.168.220.1/24 static routers=192.168.220.0
บันทึกการเปลี่ยนแปลงของคุณโดยกด Ctrl + โอ . หากต้องการปิดไฟล์กำหนดค่า ให้กด Ctrl + X .
การเปลี่ยนแปลงเหล่านี้สามารถใช้งานได้โดยเริ่มบริการ dhcpcd ใหม่:
sudo service dhcpcd restart
การแทนที่ไฟล์คอนฟิกูเรชัน dnsmasq
แพ็คเกจ dnsmasq มีไฟล์การกำหนดค่าเริ่มต้น แต่คุณต้องแทนที่ด้วยการตั้งค่าที่คุณกำหนดเอง ซึ่งจะบอก dnsmasq วิธีจัดการการรับส่งข้อมูล DHCP และ DNS
ก่อนทำการเปลี่ยนแปลงใดๆ ให้เปลี่ยนชื่อและย้ายไฟล์ dnsmasq.conf ดั้งเดิม:
sudo nano /etc/dnsmasq.conf /etc/dnsmasq.conf.original
เปิดไฟล์การกำหนดค่าทดแทนเพื่อแก้ไข:
sudo nano /etc/dnsmasq.conf
ตอนนี้คุณควรดูไฟล์ dnsmasq.conf ในโปรแกรมแก้ไขข้อความ Nano ใน Nano ให้เพิ่มสิ่งต่อไปนี้:
interface=eth0 listen-address=192.168.220.1 bind-interfaces server=8.8.8.8 domain-needed bogus-priv dhcp-range=192.168.220.50,192.168.220.150,12h
บันทึกการเปลี่ยนแปลงของคุณโดยกด Ctrl + โอ . หากต้องการปิดไฟล์กำหนดค่า ให้กด Ctrl + X .
เปิดใช้งานการส่งต่อ IP
ถัดไป เปิดใช้งานการส่งต่อ IP เพื่อให้ Raspberry Pi ของคุณยอมรับแพ็กเก็ตเครือข่ายจากการเชื่อมต่ออีเทอร์เน็ตและส่งต่อไปยังเราเตอร์ของคุณ
หากต้องการเปิดใช้งานการส่งต่อ IP ของ ipv4p ให้แก้ไขไฟล์การกำหนดค่า “sysctl.conf”:
sudo nano /etc/sysctl.conf
ไฟล์ “sysctl.conf” จะเปิดตัวในโปรแกรมแก้ไขข้อความ Nano ในไฟล์นี้ ให้ค้นหาบรรทัดต่อไปนี้:
#net.ipv4.ip_forward=1
ลบ # เพื่อให้บรรทัดนี้กลายเป็น:
net.ipv4.ip_forward=1
บันทึกการเปลี่ยนแปลงของคุณโดยกด Ctrl + โอ . หากต้องการปิดไฟล์กำหนดค่า ให้กด Ctrl + X .
ตอนนี้ นำไฟล์การกำหนดค่า “sysctl.conf” ใหม่ของคุณไปใช้จริง:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
เริ่มส่งต่อการรับส่งข้อมูลจากอีเทอร์เน็ตไปยัง Wi-Fi
เมื่อคุณเปิดใช้งานการส่งต่อ IP สำเร็จแล้ว คุณสามารถกำหนดค่าไฟร์วอลล์ของคุณเพื่อส่งต่อการรับส่งข้อมูลจากอินเทอร์เฟซอีเทอร์เน็ต (eth0) ไปยังการเชื่อมต่อ Wi-Fi ด้วยการส่งต่อนี้ อุปกรณ์ใดๆ ที่เชื่อมต่อกับ Raspberry Pi ผ่านอีเทอร์เน็ตจะสามารถเข้าถึงการเชื่อมต่อ Wi-Fi (wlan0) ของ Pi ได้
เพิ่มกฎบางอย่างที่บอกว่า Raspberry Pi ของคุณส่งต่อแพ็กเก็ตข้อมูลทั้งหมดที่ได้รับอย่างไร:
sudo iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT
บันทึกกฎใหม่เหล่านี้:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"
กฎเหล่านี้จะถูกล้างออกทุกครั้งที่ Raspberry Pi รีบูท ดังนั้นโปรดตรวจสอบว่ากฎเหล่านี้ถูกโหลดใหม่เมื่อเริ่มต้นระบบ
กำหนดสิ่งที่เกิดขึ้นเมื่อเริ่มต้นโดยแก้ไขไฟล์ “rc.local”:
sudo nano /etc/rc.local
ไฟล์ rc.local จะเปิดขึ้นในโปรแกรมแก้ไขข้อความ Nano ในตัวแก้ไข ให้ค้นหาสิ่งต่อไปนี้:
exit 0
เพิ่มสิ่งต่อไปนี้โดยตรงเหนือบรรทัด “exit”:
iptables-restore < /etc/iptables.ipv4.nat
บันทึกการเปลี่ยนแปลงของคุณโดยกด Ctrl + โอ . หากต้องการปิดไฟล์กำหนดค่า ให้กด Ctrl + X .ter”
ทดสอบบริดจ์ Wi-Fi ของคุณ
ขั้นตอนสุดท้ายคือการเริ่มบริการ dnsmasq:
sudo service dnsmasq start
ตอนนี้คุณสามารถทดสอบบริดจ์ Wi-Fi ได้แล้ว! แนบอุปกรณ์อีเธอร์เน็ตเท่านั้นเข้ากับ Raspberry Pi ของคุณผ่านสายอีเทอร์เน็ต Raspberry Pi ของคุณจะให้การเชื่อมต่ออินเทอร์เน็ตกับอุปกรณ์อีเทอร์เน็ตเท่านั้น
บทสรุป
คุณได้เรียนรู้วิธีแชร์ Wi-Fi ของ Raspberry Pi กับอุปกรณ์แบบมีสายโดยแปลงการเชื่อมต่อ Wi-Fi เป็นการเชื่อมต่ออีเทอร์เน็ต คุณยังสามารถใช้ Raspberry Pi เป็นฮอตสปอต Captive Portal Wi-Fi หรือเป็นเว็บเซิร์ฟเวอร์ส่วนตัวได้ แจ้งให้เราทราบหากสิ่งนี้มีประโยชน์สำหรับคุณ
อ่านต่อไปสำหรับโครงการ Raspberry Pi อื่นๆ ที่คุณสามารถทำได้ด้วยตัวเอง