Ngăn chặn chuyển đổi mạng Wi-Fi


6

Tôi có hai điểm truy cập wifi tại nhà: "tầng dưới" và "tầng trên". Cả hai đều là WPA2.

Nếu tôi ở tầng trên và kết nối với "tầng trên" và máy tính xách tay của tôi đi ngủ, khi tôi kích hoạt lại, nó sẽ kết nối với "tầng dưới" vì nó cao hơn trong danh sách, nhưng tín hiệu quá thấp và tôi phải chuyển đổi thủ công để "lên lầu". Làm thế nào tôi có thể ngăn chặn điều đó?

Lưu ý: Tôi không muốn "tầng trên" hoặc "tầng dưới" được ưu tiên: điều này phụ thuộc vào nơi tôi đứng trong nhà. Tôi chỉ muốn OSX gắn bó với mạng mà tôi đã chọn, bất kể đó là mạng nào. Tôi cũng không muốn gõ lại mật khẩu dài dòng ("quên mạng" có lẽ không phải là cách để đi).

Kịch bản hoặc chương trình của bên thứ ba chào mừng ...

HĐH X 10.10

CHỈNH SỬA Ban đầu tôi viết rằng tôi muốn gắn bó với mạng hiện tại, trái ngược với việc chuyển sang một mạng yếu hơn. Nhưng nếu tất cả các AP có cùng tên và mật khẩu, thì công tắc liền mạch là ổn đối với tôi. Xem câu trả lời này lời khuyên này :

"(...) Cho phép mỗi thiết bị khách quyết định sử dụng cái nào là tốt nhất" -   "Làm cho tất cả các mạng Wi-Fi trong nhà của bạn giống nhau. Cuộc sống của bạn sẽ là   tốt hơn cho nó. "

Câu trả lời:


1

Tôi cũng có hai điểm truy cập wifi tại nhà và đã tìm ra cách tốt nhất để OS X tự động chuyển đổi giữa cả hai và chọn điểm có tín hiệu tốt nhất là đặt tên cho cả hai điểm truy cập có cùng tên với cùng một mật khẩu. OS X thấy chúng giống hệt nhau. Hoạt động tuyệt vời với AirPort Extreme (tầng dưới) và Time Machine (tầng trên) của tôi giúp mở rộng wifi ở tầng dưới.


2
Tại sao điều này được bỏ phiếu? Nghe có vẻ khá logic với tôi. Liệu giải pháp này không hiệu quả?
Saaru Lindestøkke

1
@BartArondson có thể "Tôi chỉ cần OSX để gắn bó với mạng mà tôi đã chọn"
markhunte

1
@markhunte Bây giờ tôi còn bối rối hơn nữa Đó là câu mà OP có trong câu hỏi. Tại sao đó là một lý do để bỏ phiếu trả lời của ajkblue? Có phải giải pháp này không khiến OSX gắn bó với mạng OP được chọn?
Saaru Lindestøkke

@BartArondson Từ những gì tôi hiểu câu trả lời, không. Và làm thế nào để bạn biết dù sao nếu họ có cùng tên chính xác. Có lẽ ajkblue có thể trả lời điều này với sự rõ ràng hơn.
markhunte

Thật vậy, tôi nói rằng tôi muốn bám vào mạng mà tôi đã chọn. Trái ngược với việc chuyển sang cái yếu hơn. Câu hỏi của tôi đã thực sự hướng đến một loại giải pháp. Không phải ý tôi, tôi phải thừa nhận. Lời khuyên nghe có vẻ tốt: xem Sử dụng cùng SSID cho tất cả các bộ đàm trên cùng một mạng : "(...) để mỗi thiết bị khách quyết định sử dụng loại nào tốt nhất" - "Làm cho tất cả các mạng Wi-Fi trong nhà của bạn giống nhau. Cuộc sống của bạn sẽ tốt hơn cho nó." Tôi sẽ cho nó một viên đạn.
youri

6

Đi đến Tùy chọn hệ thống Mạng , chọn dịch vụ Wi-Fi của bạn, chọn Nâng cao… Wifi và kích hoạt Yêu cầu ủy quyền quản trị viên để: Thay đổi mạng . Điều này có nghĩa là bạn sẽ cần nhập mật khẩu để thay đổi mạng và ngăn OS X tự động thực hiện việc này.


Hơi khó chịu khi tôi phải nhập mật khẩu quản trị viên nhưng điều này chắc chắn ngăn OSX chuyển mạng ... và việc thực hiện cực kỳ đơn giản!
youri

1
Thật kỳ lạ: sau một vài ngày, tôi vẫn kiểm tra tùy chọn nhưng bây giờ OSX vẫn chuyển mạng ... và tôi có thể tự thay đổi mạng wifi mà không cần mật khẩu quản trị viên.
youri

6

Bạn có thể sử dụng tập lệnh để kiểm tra giá trị RSSI của SSID hiện được kết nối. Nếu nó vượt quá một ngưỡng nhất định, hơn là thay đổi sang SSID khác với RSSI thấp hơn. Điều này có thể được chạy thủ công hoặc ghép nối với Launch Daemon được kích hoạt bởi thay đổi mạng.

Trong đoạn script dưới đây, bạn sẽ phải thay đổi en1 thành giao diện wifi. Đồng thời đặt ngưỡng mong muốn của bạn cho giá trị RSSI. Trong đoạn script dưới đây, tôi đặt nó cho 65. Lần đầu tiên chạy, nó sẽ nhắc mật khẩu để cho phép netowrksetup truy cập hệ thống. Nếu không thì chạy nó với quyền root.

Nếu bạn tạo Launch Daemon, tôi sẽ theo dõi ba tệp này:

/etc/resolv.conf

/ L Library / Reference / SystemConfiguration / NetworkInterfaces.plist

/ L Library / Collferences / SystemConfiguration / com.apple.airport.preferences.plist

Tập lệnh để thay đổi SSID nếu giá trị RSSI cao.

#!/bin/bash

##Check signal strength of wifi and change if over a certain RSSI threshold.

##Get RSSI strength of WIFI and strip off the - charecter
signalStrength=`/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I | grep CtlRSSI | awk '{print $2}' | sed 's/^[-]*//'`

##Grab current connected WIFI SSID
wifiID=`networksetup -getairportnetwork en1 | cut -d ":" -f2 | sed 's/^[ t]*//'`

if [[ "$signalStrength" > 65 && "$wifiID" = "Upstairs" ]]; then
    networksetup -setairportnetwork en1 "Downstairs" [password]
    echo "Changing to Downstairs wireless, RSSI signal out of threshold"
elif [[ "$signalStrength" > 65 && "$wifiID" = "Downstairs" ]]; then
    networksetup -setairportnetwork en1 "Upstairs" [password]
    echo "Changing to Upstairs wireless, RSSI signal out of threshold"
fi

Rất thú vị! Kịch bản của bạn sẽ chuyển sang mạng với tín hiệu tốt nhất, có lẽ tốt hơn những gì tôi đã hỏi ở nơi đầu tiên. Một số nhận xét / câu hỏi: 1 ° - Tôi đã phải đổi thành en1 thành en0. 2 ° - "giám sát ba tệp này" - & gt; bạn có thể vui lòng giải thích? 3 ° - Bạn có chắc chắn OSX sẽ không thực hiện chuyển đổi ngay sau khi tập lệnh được thực thi hoặc cố gắng thực hiện đồng thời công tắc, có thể gây ra hành vi không mong muốn?
youri

Bạn sẽ phải kiểm tra xem nó sẽ chạy như thế nào khi sử dụng launchDaemon. Tôi sử dụng nó như một tập lệnh mà tôi đưa vào thanh menu và chạy khi cần. Ba tệp này là những gì được sửa đổi khi thay đổi mạng xảy ra. Đó là những gì sẽ kích hoạt launchDaemon của bạn khi SSID thay đổi.
tron_jones

Câu trả lời này dường như cũng phù hợp với một câu hỏi trước đó: Có cách nào để tự động chuyển đổi mạng không dây tùy thuộc vào cường độ tín hiệu không? (2012-08-25)
Graham Perrin

+1 cho câu trả lời này và re: nhận xét từ @youri "Tôi đã phải đổi thành en1 thành en0", apple.stackexchange.com/a/145351/8546 đề cập đến một JAMF toàn quốc bài viết có thể được quan tâm.
Graham Perrin

0

Bạn có thể thử thêm hai "vị trí" trong phần mạng của tùy chọn hệ thống. Một cho tầng trên và một cho tầng dưới. Sau đó đi vào và di chuyển mạng ở tầng dưới lên ưu tiên hàng đầu khi bạn đã chọn vị trí ở tầng dưới và di chuyển mạng ở tầng trên lên ưu tiên hàng đầu dưới các vị trí trên lầu.

Sau đó, bạn có thể chuyển đổi giữa hai vị trí trong tùy chọn hệ thống (hoặc sử dụng biểu tượng quả táo nếu bạn là tiền yosemite) tùy thuộc vào việc bạn ở trên lầu hay dưới lầ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.