내 현재 WiFi 네트워크(Windows -.-의 도움으로 이 글을 쓰고 있습니다)의 SSID에는 "ö"라는 움라우트가 있습니다.
SSID를 변경할 수 없는 경우 해당 네트워크에 어떻게 연결합니까?
Ubuntu 12.04, Android 2.3.6 또는 Android 4.0에서는 작동하지 않으므로 일반적인 Linux 문제인 것 같습니다. 네트워크 어댑터는 "Broadcom 4313"입니다.
문제는 네트워크인 것 같습니다.숨겨진. Android와 Ubuntu 모두 수동으로 입력한 SSID 문자열을 올바르게 해석하지 않습니다. 그러나 네트워크가 숨겨지지 않으면 두 시스템 모두 네트워크를 볼 수 있습니다. Ubuntu는 SSID 이름을 올바르게 인식하지만 Android는 움라우트 "ö"에서 실패하고 다음 두 문자도 누락됩니다. 따라서 "[일부 문자]örc[일부 기타 문자]"가 표시되는 대신 " [일부 문자] [일부 기타 문자가 표시됩니다. " ]").
따라서 숨겨진 SSID와 특수 문자 SSID를 조합하면 문제가 발생합니다.
답변1
인코딩과 관련이 있는 것 같습니다. ~에 따르면이 답변, SSID는 (현재) 명시적인 UTF-8 또는 UNSPECIFIED 인코딩을 가질 수 있지만 "SSIDEncoding" 필드는 최신 표준의 일부입니다. 아마도 이보다 오래된 장비를 사용하는 네트워크에서는 실제로 "지정되지 않음"일 것입니다.
사람이 입력한 텍스트를 기반으로 SSID를 설정하는 작업은 모두 ASCII 또는 UTF-8 형식으로 수행될 것이라고 생각합니다. 하지만 SSIDEncoding 필드를 지정하는 표준은 2012년부터 나온 것으로 나타나므로 그 이전에는 어떤 인코딩을 사용할 수 있었습니다(지정하지 않으면 여전히 어떤 인코딩을 사용할 수 있습니다). 따라서 이를 다른 형식으로 설정하는 일부 소프트웨어가 있을 수 있습니다. 예를 들어 ASCII를 사용하지만 문자열에 홀수 문자가 포함된 경우 UTF-16을 사용합니다. Java와 Windows는 모두 내부적으로 UTF-16을 사용한다고 생각합니다.
라우터는 거의 확실하게 SSID를 일련의 바이트로 인식하고 기본 인코딩에 전혀 신경 쓰지 않으므로 SSID를 설정할 때 전달되는 모든 것을 허용합니다. 이를 확인하려면 브로드캐스트된 바이트의 실제 시퀀스를 살펴봐야 합니다.
네트워크가 숨겨지지 않으면 두 시스템 모두 네트워크를 볼 수 있습니다.
UTF-16 문자열 특성이 인식되므로 숨기지 않을 때 SSID는 표시를 위해 로컬 인코딩으로 변환됩니다. 그러나 수동으로 입력하려고 하면 시스템은 방송에 어떤 인코딩을 사용할지 알 수 없습니다. 원래 설정한 소프트웨어의 방법과 일치하는 경우에만 작동합니다. 새로운 SSIDEncoding 필드에는 이 문제를 해결할 수 있는 잠재력이 있지만 A) 지정되지 않은 취약점도 허용하고 B) 이전 장치에서는 문제가 되지 않습니다. Linux와 Android는 일반적으로 UTF-8을 사용하므로 SSID가 실제로 UTF-16 문자열인 경우 화면에서는 동일하게 보이지만 수동으로 입력하고 검색하면 일치하지 않을 수 있습니다.
답변2
Android 문제에 관해서는 저와 다른 사람들이 이 Android 앱을 사용하여 성공했습니다.https://play.google.com/store/apps/details?id=com.roamingsoft.manager
답변3
제 제안이 어리석을 수도 있지만 $ setxkbmap -layout de
시스템의 그래픽 도구를 사용하여 독일어 키보드 레이아웃을 설정하고 SSID를 입력할 수 있습니까?
답변4
수동 입력을 추가하는 것은 어떻습니까 wpa_supplicant.conf
? "움라우트"가 있는 SSID의 경우 16진수 ssid 항목만 추가하면 됩니다.
SSID=$(echo 'SSID' | xxd -u -p)
network={
priority=1
ssid=$SSID
mode=0
key_mgmt=WPA-PSK
psk="PASSWORD"
}
conf 파일에 var를 사용하지 마십시오. 터미널에서 가져와서 따옴표 없이 16진수를 작성하세요.