AP wifi ที่มี NIC เดียว


8

ฉันกำลังพยายามใช้การ์ดไร้สายของพีซีเป็น AP ในขณะที่เชื่อมต่อกับเครือข่าย wifi ของฉันผ่านการ์ดเดียวกัน แต่ฉันมีปัญหา สิ่งที่ฉันพยายามทำให้สำเร็จคือสิ่งที่เทียบเท่ากับเทคโนโลยี Windows Wi-Fi เสมือนจริง ตามหลักการมันง่ายมาก:

service network-manager stop
iw dev wlan0 del
iw phy phy0 interface add new0 type station
service network-manager start
iw phy phy0 interface add new1 type __ap
hostapd -B /etc/hostapd.conf

ด้วยการกำหนดค่าที่เหมาะสมสำหรับ hostapd:

cat /etc/hostapd/hostapd.conf 
interface=new1
driver=nl80211
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
ssid=XXXX
country_code=us
hw_mode=g
channel=1
macaddr_acl=0
auth_algs=3
ignore_broadcast_ssid=0
eap_server=0
wpa=2
wpa_passphrase=XXXX
wpa_pairwise=TKIP CCMP
rsn_pairwise=TKIP CCMP

อย่างไรก็ตามไดรเวอร์ nl80211 ปฏิเสธที่จะนำ virtual IF new1 เข้าสู่โหมด AP นี่คือบิตที่น่าสนใจ: ผลลัพธ์ของรายการ iw มี

Supported interface modes:
         * IBSS
         * managed
         * AP
         * AP/VLAN
         * monitor
software interface modes (can always be added):
         * AP/VLAN
         * monitor
valid interface combinations:
         * #{ managed } <= 1, #{ AP } <= 1,
           total <= 2, #channels <= 1, STA/AP BI must match
         * #{ managed } <= 2,
           total <= 2, #channels <= 1

เป็นที่ชัดเจนว่าการ์ด wifi ของฉัน (Intel Centrino Advanced-N 6235 [8086: 088e] ภายใต้ iwlwifi) รองรับโหมด AP (ฉันได้ทดสอบแล้ว) และฉันตีความ "ชุดค่าผสมของอินเตอร์เฟซที่ถูกต้อง" เพื่อหมายความว่าฉันจะมีได้มากที่สุด มีการจัดการ 1 และ 1 AP vifs ในการ์ดนี้ในเวลาเดียวกัน แต่จากนั้นฉันสังเกตเห็นข้อ จำกัด ที่ดูลึกลับ STA / AP BI ต้องตรงกัน

ไม่มีใครรู้ว่าสิ่งนี้หมายถึงอะไรและไม่ว่าจะเป็นสิ่งที่ขัดขวางความพยายามของฉันในการใช้สอง vifs บนการ์ดของฉันหนึ่งในสถานีอื่น ๆ ในโหมด AP? ไชโย


คำถามเดียวกัน: superuser.com/questions/615664/…
imz - Ivan Zakharyaschev

1
@ imz - IvanZakharyaschev คุณพูดถูกแล้วขอบคุณมาก แต่คำถามของฉันยังเกี่ยวกับความหมายของ STA / AP BI ต้องตรงกันซึ่งดูเหมือนว่าจะให้ข้อ จำกัด บางอย่างซึ่งฉันยังไม่ได้ถอดรหัส
MariusMatutiae

ฉันขอโทษที่ฉันไม่ได้นำรายละเอียดนี้ไปพิจารณา คุณพูดถูก แต่ปัญหาเฉพาะนี้ไม่ชัดเจนจากชื่อซึ่งทำให้ฉันคิดว่าการมีอแด็ปเตอร์ WiFi หนึ่งตัวเป็นปัญหาเดียวที่นี่ ...
imz - Ivan Zakharyaschev

คำตอบ:


5

ในกรณีที่มีใครมาที่นี่เพื่อระบุ "STA / AP BI ต้องตรงกัน":

include/net/cfg80211.hโดยเฉพาะอย่างยิ่งที่มาของเคอร์เนลstruct ieee80211_iface_combinationกล่าว

 * @beacon_int_infra_match: In this combination, the beacon intervals
 *  between infrastructure and AP types must match. This is required
 *  only in special cases.

ดังนั้นBIคือช่วงเวลาของสัญญาณและการจับคู่ให้ตรงกันไม่น่าจะเป็นปัญหาใหญ่


6

จริงๆแล้วประโยคลึกลับ

STA/AP BI must match

ดูเหมือนว่าจะไม่เกี่ยวข้องกับการตั้งค่าของฉันไม่ทำงาน มันกลับกลายเป็นว่า

 #channels <= 1

เป็นกุญแจสำคัญในการทำให้มันทำงาน ในที่สุดฉันก็เข้าใจว่าหมายความว่าฉันสามารถใช้ช่องสัญญาณเดียวได้เมื่อฉันมี vif สองตัวบนอุปกรณ์ทางกายภาพเดียวกัน (Intel Centrino ของฉันในอัตราใดก็ตาม) หนึ่งช่องใน AP อีกช่องหนึ่งในโหมด Station ดังนั้นฉันจึงเปลี่ยนช่องในไฟล์ hostapd conf เป็นแบบเดียวกับที่ฉันพยายามเชื่อมต่อและฉันไม่มีข้อความแสดงข้อผิดพลาด

ณ จุดนี้ฉันกำหนดค่า iptables เริ่ม dnsmasq แล้ว hostapd โดยวิธีการ

echo 1 >/proc/sys/net/ipv4/ip_forward
iptables --table nat --append POSTROUTING --out-interface new0 -j MASQUERADE
iptables --append FORWARD --in-interface new1 -j ACCEPT
dnsmasq 
/usr/local/bin/hostapd /etc/hostapd/hostapd.conf

จากนั้นฉันก็มีการ์ด wifi ตัวเดียวทำงานพร้อมกันในฐานะจุดเข้าใช้และไคลเอนต์ไปยังเครือข่ายที่เชื่อมต่อกับอินเทอร์เน็ต

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