ฉันพยายามแชร์การเชื่อมต่ออินเทอร์เน็ตแบบมีสายของฉันกับโทรศัพท์ Android ของฉัน อย่างไรก็ตามฉันไม่สามารถทำสิ่งนี้ได้สำเร็จ คุณเคยประสบความสำเร็จบ้างไหม? ระบบปฏิบัติการที่ฉันใช้มีดังนี้:
- Ubuntu 10.10
- Android 2.3
ฉันพยายามแชร์การเชื่อมต่ออินเทอร์เน็ตแบบมีสายของฉันกับโทรศัพท์ Android ของฉัน อย่างไรก็ตามฉันไม่สามารถทำสิ่งนี้ได้สำเร็จ คุณเคยประสบความสำเร็จบ้างไหม? ระบบปฏิบัติการที่ฉันใช้มีดังนี้:
คำตอบ:
ใช่มันเป็นไปได้ ฉันมี Ubuntu 11.04, NetworkManager 0.8.4, Android Nexus One โทรศัพท์ที่ใช้ Cyanogenmod 7
ตามที่อธิบายโดย Roman คลิกขวาที่ไอคอน NetworkManager แล้วเลือก "สร้างเครือข่ายไร้สายใหม่" ฉันเลือกที่จะปล่อยให้การเชื่อมต่อเปิดกว้าง (ไม่มี WPA และไม่มี WEP) โทรศัพท์ของฉันสามารถเห็นเครือข่ายได้ทันทีและฉันเชื่อมต่อได้โดยไม่มีปัญหา การเชื่อมโยงนั้นเสร็จสิ้นโดยอัตโนมัติดังนั้นฉันสามารถท่องอินเทอร์เน็ตได้โดยไม่ต้องตั้งค่าอะไรเพิ่มเติม
เหตุผลที่คุณมีปัญหากับวิธีการข้างต้นเป็นเพราะหุ้น Android 2.3 ไม่สนับสนุนเครือข่ายเฉพาะกิจ เพื่อความแม่นยำ wpa_supplicant ของ Android จะไม่แสดงเครือข่ายเฉพาะกิจ มีหลายวิธีในการแก้ไขปัญหานี้ Google ไปรอบ ๆ และไปล่าสัตว์ในฟอรัม xda-Developers คุณอาจต้องแฮ็คข้อมูลในโทรศัพท์ของคุณซึ่งอยู่นอกเหนือขอบเขตของคำตอบนี้
คำแนะนำส่วนตัวของฉัน: ถ้าโทรศัพท์ของคุณรองรับ Cyanogenmod คุณสามารถติดตั้งได้เพื่อรับการสนับสนุนแบบเฉพาะกิจและแฮ็คที่น่าพอใจอื่น ๆ คุณจะต้องรูทโทรศัพท์ของคุณซึ่งอาจจะใช่หรือไม่ดีก็ได้
อีกทางเลือกหนึ่งคือลอง "โหมดโครงสร้างพื้นฐาน" หลังจากตั้งค่าเครือข่ายไร้สายเฉพาะกิจตามข้างต้นให้คลิกที่ไอคอน NetworkManager เลือก "แก้ไขการเชื่อมต่อ" กดแท็บไร้สายและแก้ไขเครือข่ายเฉพาะกิจที่คุณเพิ่งสร้างขึ้น ภายใต้โหมดเลือก "โครงสร้างพื้นฐาน" ฉันไม่แน่ใจว่าสิ่งนี้จะใช้ได้กับคุณหรือไม่เนื่องจากฉันไม่มีโทรศัพท์ Android ในสต็อกที่จะทำการทดสอบ ความคิดของฉันคือถ้าโหมด ad-hoc เป็นปัญหาจากนั้นโหมดอื่นอาจเป็นทางออก
โชคดี!
ก่อนอื่นเรารู้ ROM หุ้นของ Android คืออันที่มาพร้อมกับโทรศัพท์ไม่รองรับโหมด ad-hoc (น่าแปลกใจ) และแม้แต่ Ice-Cream Sandwich (Android 4.0) จะไม่สนับสนุนโหมด ad-hoc
ดังนั้นเราต้องสร้างจุดเชื่อมต่อโดยใช้ Ubuntu ที่โทรศัพท์ Android สามารถเชื่อมต่อได้อย่างง่ายดาย ใน Windows คุณสามารถใช้ Connectify เพื่อทำสิ่งนี้และทำงานได้อย่างสมบูรณ์แบบ แต่สำหรับ Ubuntu คุณอาจมีปัญหาบางอย่างขึ้นอยู่กับว่าการ์ด wifi ของคุณรองรับโหมดจุดเข้าใช้งาน (โหมดหลัก) หรือไม่
ตอนนี้แม้ว่า wifi-card ของคุณรองรับโหมดจุดเข้าใช้งานปัญหาต่อไปคือว่าไดรเวอร์ wifi-card ของคุณรองรับโหมด AP หรือไม่ถ้าเป็นเช่นนั้นปัญหาจะได้รับการแก้ไขและถ้าคุณไม่ได้มีสามตัวเลือก:
รอจนกระทั่งไดรเวอร์ได้รับการอัปเดตสำหรับโหมด AP (ไดรเวอร์การ์ด wifi จำนวนมากยังอยู่ในระยะจัดเตรียม)
ซื้อ wifi-dongle และตรวจสอบให้แน่ใจว่ารองรับโหมด AP บน Ubuntu
ใช้ Windows โดยที่ Connectify จะทำงานให้คุณ
หากคุณสนใจคุณสามารถโพสต์ชื่อไดรเวอร์การ์ด wifi ของคุณเพื่อที่ฉันจะได้ช่วยเหลือคุณต่อไป ใช้คำสั่งนี้:
lshw -c network
ฉันพบวิธีแก้ปัญหาที่ใช้งานได้เพื่อแบ่งปันการเชื่อมต่ออินเทอร์เน็ตของฉันกับโทรศัพท์ของฉันผ่านทางเครือข่าย USB ย้อนกลับ แต่แล็ปท็อปของฉันใช้การเชื่อมต่อไร้สายสำหรับ:
อินเทอร์เน็ต -> ไร้สาย -> แล็ปท็อป -> สาย USB -> โทรศัพท์ Android
ดังนั้นหากเป็นไปได้สำหรับคุณหรือหากคุณมีการ์ดอีเธอร์เน็ตที่สองสำหรับพีซีของคุณคุณควรตรวจสอบแอป 'Reverse Tether Trial' จาก play store
กรุณาตรวจสอบลิงค์นี้และบอกฉันว่ามันเป็นสิ่งที่คุณกำลังมองหา
https://help.ubuntu.com/community/WifiDocs/WirelessAccessPoint
หากดูเหมือนว่า (หรือใกล้เคียง) สิ่งที่คุณต้องการแจ้งให้เราทราบ
ฉันสนใจที่จะทำสิ่งนี้ด้วยตัวเองโดยเฉพาะกับการปรับเปลี่ยนทิศทางการรับส่งข้อมูลผ่าน ppp0 เพียงเล็กน้อยเท่านั้น ซึ่งเป็นการเชื่อมต่อแบบแชร์อินเทอร์เน็ต
บางทีเราสามารถปรับแต่งคำแนะนำเหล่านี้เพื่อทำสิ่งที่เราต้องการ
แก้ไข: ดูเหมือนว่าจะใช้งานได้ดีที่สุดกับเครื่องเฉพาะ (เป็นหลักทำให้เป็นเราเตอร์) ฉันยังคงมองผ่านการกำหนดค่า แต่อาจทำให้เกิดปัญหาบางอย่างสำหรับแล็ปท็อปที่คุณจะใช้ไร้สายเพื่อเชื่อมต่อไปยังสถานที่ต่างๆ
นอกจากนี้ยังมีสองขั้นตอนที่เกี่ยวข้องกับเครื่อง Windows ที่เราอาจจะทิ้ง
คุณจะต้องการเห็นสิ่งนี้ด้วย https://help.ubuntu.com/community/WifiDocs/MasterMode
วิธีแก้ปัญหาการทำงานสำหรับฉันด้วยสาย USBบน Kubuntu 15.10 และ Android 4.2.2 บน Samsung S3 mini กำลังติดตาม
ใน / etc / network / interfaces ของคุณคุณต้องมีสองบรรทัดนี้มิฉะนั้นคุณจะได้รับno such device
ข้อผิดพลาด
allow-hotplug usb0
auto usb0
ติดตั้ง adb แล้ว ( apt-get install android-tools-adb
)
ใน android ของคุณเปิดใช้งานการตั้งค่า -> การเชื่อมต่อ -> การเชื่อมต่อเครือข่าย -> การปล่อยสัญญาณและฮอตสปอตแบบพกพา -> ตัวเลือกการปล่อยสัญญาณผ่าน USB นี่จะเป็นการสร้างการเชื่อมต่อ USB ไปยังคอมพิวเตอร์ifconfig
ของคุณ ดู @ ชื่ออินเทอร์เฟซสำหรับฉันenxf6759e7fbebd
ในเวลานี้
enxf6759e7fbebd Link encap:Ethernet HWaddr a2:61:3c:83:1c:38
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:464 (464.0 B) TX bytes:0 (0.0 B)
eth0 Link encap:Ethernet HWaddr 50:e5:49:47:f4:fd
inet addr:192.168.178.20 Bcast:192.168.178.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:40894966 errors:0 dropped:0 overruns:0 frame:0
TX packets:86312833 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20969506400 (20.9 GB) TX bytes:120329513606 (120.3 GB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:30521 errors:0 dropped:0 overruns:0 frame:0
TX packets:30521 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:10868749 (10.8 MB) TX bytes:10868749 (10.8 MB)
กำหนดที่อยู่ IP ให้กับคอมพิวเตอร์ของคุณบนอินเทอร์เฟซเครือข่ายนี้ด้วยคำสั่งต่อไปนี้sudo ifconfig enxf6759e7fbebd 192.168.42.135 netmask 255.255.255.0
โดยที่ enxf6759e7fbebd เป็นอินเทอร์เฟซที่คุณได้รับในขั้นตอนก่อนหน้า
เปิดใช้งาน IP forwaring ด้วย
sudo -- sh -c 'echo 1 > /proc/sys/net/ipv4/ip_forward'
เปิดใช้งาน nat บนคอมพิวเตอร์ของคุณด้วย
sudo iptables -t nat -F
sudo iptables -t nat -A POSTROUTING -j MASQUERADE
ในคอมพิวเตอร์ของคุณเชื่อมต่อกับอุปกรณ์ Android ของคุณด้วย
adb shell
su
จากนั้นมีการเชื่อมต่อของคุณคุณสามารถตรวจสอบด้วยbusybox ifconfig -a
คำสั่ง
rndis0 Link encap:Ethernet HWaddr FA:08:D6:1A:35:90
inet addr:192.168.42.129 Bcast:192.168.42.255 Mask:255.255.255.0
inet6 addr: fe80::f808:d6ff:fe1a:3590/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:4 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:564 (564.0 B)
คุณสามารถเพิ่มเส้นทางเริ่มต้นไปยังที่อยู่เครือข่ายคอมพิวเตอร์ของคุณที่คุณแก้ไขในจุดที่ 2 ด้วยbusybox route add default gw 192.168.42.135 dev rndis0
และนั่นคือมัน (คุณสามารถตรวจสอบเส้นทางของคุณด้วยbusybox route
คำสั่ง)
สมมติว่าคุณมีการ์ดไร้สายในคอมพิวเตอร์ของคุณด้วย: ใน Network Manager ให้คลิกเมนูและ 'สร้างเครือข่ายไร้สายใหม่ ... ' หลังจากนั้นคุณจะเห็นเครือข่ายใน Android ของคุณ
คุณสามารถสร้างเครือข่ายไร้สายได้จากเมนู wifi ของคอมพิวเตอร์ คลิกขวาที่ไอคอน wifi ในทาสก์บาร์และคลิกสร้างเครือข่ายใหม่ กรอกตัวเลือกจากนั้นเชื่อมต่อจากโทรศัพท์ของคุณ ตรวจสอบให้แน่ใจว่าคอมพิวเตอร์ของคุณเชื่อมต่อกับสายเครือข่ายแบบใช้สายด้วย สายเคเบิลควรเชื่อมต่อกับเครือข่ายไร้สายโดยอัตโนมัติจากความเข้าใจของฉันและมันก็ใช้ได้ดี
มันใช้งานได้สำหรับฉัน
ติดตั้ง hostapd
sudo apt-get install hostapd
ในคำง่าย ๆ hostapd ช่วยให้คุณสามารถสร้างจุดเชื่อมต่อ wifi ของซอฟต์แวร์ที่มีตัวเลือกการกำหนดค่าที่เหมาะสม ในส่วนที่เหลือของโพสต์นี้ฉันจะแสดงวิธีสร้างจุดเชื่อมต่อซอฟต์แวร์ใน Linux โดยใช้ hostapd และแบ่งปันอินเทอร์เน็ตของคุณไปยังอุปกรณ์ผ่านทางมัน
หลังจากติดตั้ง hostapd ติดตั้งเซิร์ฟเวอร์ dhcp
sudo apt-get install dhcp3-server hostapd
จากนั้นเปิดโปรแกรมแก้ไขข้อความเช่นgedit
คัดลอกต่อไปนี้ลงในโปรแกรม
interface=wlan0
driver=nl80211
ssid=YOUR_SSID_NAME
hw_mode=g
channel=11
wpa=1
wpa_passphrase=YOUR_PASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
wpa_ptk_rekey=600
โปรดเปลี่ยนเพื่อกรอกชื่อเครือข่ายของคุณหลังจากssid=
นั้นรวมถึงรหัสผ่านหลังจากwpa_passphrase=
นั้น
บันทึกไฟล์เช่นเดียวกับhostapd.conf
ในโฟลเดอร์บ้านของคุณ
สร้างโฆษณาไร้สายใหม่และเชื่อมต่อ
ตอนนี้เปิดเทอร์มินัลแล้วพิมพ์:
sudo hostapd hostapd.conf
เปิด wifi ในโทรศัพท์ของคุณและค้นหา ssid ของคุณ
แหล่งที่มาจากที่นี่