좋아, 문제는 내가 살고 있는 국가의 재고 무선 regdb에 대한 규정이 올바르지 않다는 것입니다. 사실 우리가 받은 규정에 근접하지도 않습니다. 13채널(2472MHz)을 사용할 수 있으며, 물론 20dBm 이상의 전송 전력도 사용할 수 있습니다. 그리고 내 WLAN 어댑터는 1W를 지원하므로 그 이점을 활용하여 30dBm을 사용하고 싶습니다. 내가 보기에 가장 간단한 해결책은 데비안 패키지의 소스를 얻고, 규정을 수정하고, deb 패키지를 다시 빌드하고 설치하는 것입니다. 이것이 제가 몇 년 전 Debian 7(Wheezy)에서 해본 일인데 정말 매력적이었습니다. 데비안 9에서는 그렇지 않습니다. 빌드는 실패 없이 끝나고 두 개의 반짝이는 새 패키지를 얻었지만 작동하지 않습니다. iw reg get을 사용하여 국가 00을 얻습니다. 나는 Regulatory.bin 파일에 서명해야 하는 키에 문제가 있다고 확신합니다. 아마도 Wheezy 이후로 뭔가 변경되었을 것입니다. 내 단계는 다음과 같습니다.
pbuilder를 설치하고, 소스를 얻고, 필요한 종속성을 설치합니다.
apt-get update
apt-get install pbuilder
apt-get source wireless-regdb crda
apt-get build-dep wireless-regdb crda
내 키 쌍 생성
openssl genrsa -out ~/.wireless-regdb-andy.key.priv.pem 2048
openssl rsa -in ~/.wireless-regdb-andy.key.priv.pem -out andy.key.pub.pem -pubout -outform PEM
cd wireless-regdb-2016.06.10
vi debian/rules (change REGDB_AUTHOR to andy, that's for the key)
vi db.txt (edit the regulations to the correct values)
새로운 Regulatory.bin을 만들고 내 개인 키로 서명하세요.
./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-andy.key.priv.pem
공개 키를 crda에 복사
cp ../andy.key.pub.pem ../crda-3.18/pubkeys/
패키지를 빌드하세요
debuild -i -us -uc -b
cd ../crda-3.18/
debuild -i -us -uc -b
그게 다야. 그들은 구축하지만 작동하지 않습니다.