Sự khác biệt giữa `wpa-roam` và` wpa-conf` trong tệp / etc / network / giao diện là gì?


46

Tôi đăng một câu hỏi trước về cách thiết lập một địa chỉ IP tĩnh trên RPI và cuối cùng đã tìm ra , cùng với một số người khác , rằng câu trả lời là sự thay đổi wpa-roamđến wpa-confkhi trỏ đến /etc/wpa_supplicant/wpa_supplicant.conf, nhưng tại sao không làm việc này?

tức là khi tôi có cái này trong /etc/network/interfacestập tin của mình :

auto lo
iface lo inet loopback

auto wlan0
iface wlan0 inet static
    address 192.168.0.3
    netmask 255.255.255.0
    gateway 192.168.0.1
    broadcast 192.168.0.255
    network 192.168.0.0
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

Giả sử /etc/wpa_supplicant/wpa_supplicant.confđã được cấu hình đúng, phương pháp này không hoạt động.

Đây là đầu ra có liên quan từ iwconfig:

wlan0     unassociated  Nickname:"<WIFI@REALTEK>"
          Mode:Managed  Frequency=2.437 GHz  Access Point: Not-Associated   
          Sensitivity:0/0  
          Retry:off   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Cũng như từ ifconfig:

wlan0     Link encap:Ethernet  HWaddr ec:1a:59:64:3a:36  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:847 errors:0 dropped:1029 overruns:0 frame:0
          TX packets:759 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:677394 (661.5 KiB)  TX bytes:133345 (130.2 KiB)

Nhưng tất cả mọi thứ một cách kỳ diệu bắt đầu làm việc khi bạn thay đổi wpa-roamđể wpa-confvà chạy sudo /etc/init.d/networking restart. Khi nào bạn sẽ sử dụng wpa-roam, và khi nào bạn sẽ sử dụng wpa-conf?

Câu trả lời:


30

wpa-roaming là một phương pháp mà bạn có thể duyệt và kết nối với các mạng không dây.

Kết quả của thiết lập sau là nếu cáp ethernet không được gắn, wlan0 được ưu tiên và kết nối bạn với mạng không dây mong muốn của bạn hoặc với mạng không dây mở có sẵn hoặc mạng không dây được xác định trước. Nếu bạn kết nối cáp ethernet, kết nối mạng đã tắt sẽ ngay lập tức tắt truy cập WiFi và eth0 sau đó kết nối bạn với mạng được kết nối. Bằng cách rút cáp mạng, kết nối không dây sẽ ngay lập tức khả dụng trở lại.

Nguồn: http://manual.aptosid.com/en/inet-setup-en.htm

Tôi giả định rằng, wpa-conflà cấu hình tĩnh không cần thiết để chuyển vùng qua các giao diện mạng. Tôi không thể tìm thấy bất kỳ tài liệu liên quan và chi tiết cho việc này.

Nhân tiện, tôi có vấn đề tương tự với cấu hình WiFi của tôi. WiFi của tôi không hoạt động khi rút ethernet có dây. Vì vậy, tôi đã thay đổi wpa-roam thành wpa-conf giống như bạn, nó đã hoạt động.


1
Tôi nghi ngờ rằng nếu bạn muốn sử dụng wpa-roam, bạn cần đặt wlan0 thành thủ công thay vì dhcp hoặc tĩnh. Đó chỉ là một lý thuyết.
Lawrence

5
Vâng, đó là chính xác. Roam có nghĩa là bạn cho phép giao diện không dây thử và kết nối với các điểm truy cập khác "chuyển vùng" - nhưng nếu bạn chỉ có 1 bộ thì có nghĩa là nó sẽ cố gắng "kết nối lại" với nó nếu có sự cố. Với wpa-conf, nó sẽ không kết nối lại khi thả.
Piotr Kula

@Lawrence, thực sự. Mặc dù nhiều hơn một lý thuyết: nó được báo cáo khi bạn chạysudo /etc/init.d/networking restart
Joool Schulenklopper

@jschulenklopper À. thậm chí không nhận ra điều đó. Tôi không sử dụng /etc/init.d/networking restartchút nào haha.
Lawrence

3
Một điểm khác biệt cần lưu ý là đối với việc wpa-roam ifplugdngắt kết nối wlan0khi eth0được cắm. Hành vi có thể định cấu hình của nó và có thể là RaspberryPI cụ thể.
domen

4

Người ta cũng có thể tìm thấy một lời giải thích đầy đủ về hai chế độ hoạt động (Được quản lý và Chuyển vùng) cho wpa_supplicant trong tệp tài liệu được cài đặt cục bộ - có thể xem (phiên bản trực tuyến [cũ hơn?] Ở đây ):

zless /usr/share/doc/wpa_supplicant/README.modes.gz

Nó giải thích rằng trong khi chế độ Managed chỉ cho phép kết nối với mạng WiFi được cấu hình đơn lẻ, chế độ Roaming cho phép kết nối với nhiều mạng WiFi với các cấu hình mạng khác nhau có thể được kiểm soát bằng cách thêm tùy chọn đặc biệt id_strphù hợp với các mục tương ứng trong tập tin cấu hình mạng - được chỉ định trong /etc/network/interfacestập tin. ví dụ:

allow-hotplug eth1
iface eth1 inet manual
    wpa-driver wext
    wpa-roam /etc/wpa_supplicant/wpa_roam.conf

# id_str="uni"
iface uni inet dhcp

# id_str="home_static"
iface home_static inet static
        address 192.168.0.20
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1

Trong đó các mạng WiFi tương ứng được chỉ định trong wpa-roamtệp. ví dụ /etc/wpa_supplicant/wpa_roam.conf:

network={
        ssid="foo"
        key_mgmt=NONE
        # this id_str will notify /sbin/wpa_action to 'ifup uni'
        id_str="uni"
}

network={
        ssid="bar"
        psk=123456789...
        # this id_str will notify /sbin/wpa_action to 'ifup home_static'
        id_str="home_static"
}

Vì vậy, mạng "uni" sẽ sử dụng DHCP trong khi mạng "home_static" sẽ sử dụng địa chỉ IP tĩnh 192.168.0.20. Mặc dù người ta không phải sử dụng id_strtùy chọn và thiết bị sẽ chỉ sử dụng mặc định (xem tệp tài liệu).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.