armbianで起動したchromiumが文字化けする

久しぶりにOrange Pi PC2に電源を入れたらOSが起動しなかった….

microSDに最新のarmbianを入れてGUIを表示させてみると日本語が文字化けしている。

以前、Ubuntuベースのメール統合環境アプライアンスZentyalのコンソール表示文字化けを直す際に調べた「Zentyalを日本語で使う場合の設定手順」が流用できるかなと試してみる・・・

osakanataro@orangepipc2:~$ sudo apt install  fonts-arphic-uming fonts-takao-pgothic
[sudo] osakanataro のパスワード:
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
E: パッケージ fonts-takao-pgothic が見つかりません
osakanataro@orangepipc2:~$

fonts-takao-pgothicがないらしいので、fonts-arphic-umingだけで再チャレンジ

osakanataro@orangepipc2:~$ sudo apt install fonts-arphic-uming
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  fonts-arphic-uming
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
7,940 kB のアーカイブを取得する必要があります。
この操作後に追加で 21.5 MB のディスク容量が消費されます。
取得:1 http://cdn-fastly.deb.debian.org/debian buster/main arm64 fonts-arphic-uming all 0.2.20080216.2-10 [7,940 kB]
7,940 kB を 7秒 で取得しました (1,142 kB/s)
以前に未選択のパッケージ fonts-arphic-uming を選択しています。
(データベースを読み込んでいます ... 現在 111309 個のファイルとディレクトリがインストールされています。)
.../fonts-arphic-uming_0.2.20080216.2-10_all.deb を展開する準備をしています ...
fonts-arphic-uming (0.2.20080216.2-10) を展開しています...
fonts-arphic-uming (0.2.20080216.2-10) を設定しています ...
fontconfig (2.13.1-2) のトリガを処理しています ...
osakanataro@orangepipc2:~$

ブラウザを起動してみると無事表示

かと思ったら、起動直後の画面とかでちらほら文字化けが..

「apt search fonts-」で探してみると、fonts-takao, fonts-takao-gothic, fonts-takao-mincho があったので「 fonts-takao-gothic 」をインストールしてみることに

osakanataro@orangepipc2:~$ sudo apt install fonts-takao-gothic
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
  fonts-takao-gothic
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
3,523 kB のアーカイブを取得する必要があります。
この操作後に追加で 12.5 MB のディスク容量が消費されます。
取得:1 http://cdn-fastly.deb.debian.org/debian buster/main arm64 fonts-takao-gothic all 00303.01-2 [3,523 kB]
3,523 kB を 2秒 で取得しました (1,551 kB/s)
以前に未選択のパッケージ fonts-takao-gothic を選択しています。
(データベースを読み込んでいます ... 現在 111344 個のファイルとディレクトリがインストールされています。)
.../fonts-takao-gothic_00303.01-2_all.deb を展開する準備をしています ...
fonts-takao-gothic (00303.01-2) を展開しています...
fonts-takao-gothic (00303.01-2) を設定しています ...
update-alternatives: /usr/share/fonts/truetype/fonts-japanese-gothic.ttf (fonts-japanese-gothic.ttf) を提供するために自動モードで /usr/share/fonts/truetype/takao-gothic/TakaoPGothic.ttf を使います
fontconfig (2.13.1-2) のトリガを処理しています ...
osakanataro@orangepipc2:~$

出力結果を見ると、TakaoPGothic.ttf が含まれているようなので、おそらくパッケージ名が変わったのだろう、ということに…

ブラウザを起動してみると期待通りの表示が

ルータ設定画面の表示も不自然さが減少した感じです。

いまさらNIS(yp)サーバを構築してみる

既存環境への新規機器増設のため、既存環境を模した環境を作る必要があり、NIS(yp)環境を作ることになった。

なお、NISはNetwork Information Servicesの略で、ホスト名、ユーザ名とパスワード、グループ名をサーバで一括管理できるようにする仕組みです。元々は yp=yellow page=電話帳 という名称だったものが、NISと称されるようになっています。このため、コマンドなどには旧名称のypという文字列が残っています。

まず、RHEL8/CentOS8ではNISサーバはまだ提供されていますが、非推奨パッケージとなっています。

2022/12/20追記:RHEL9ではypserv/ypbindが提供されなくなりました。NISサーバ/クライアントの両面で使えなくなりました→18.3. 廃止された機能

RHEL7/CentOS7環境で作ることにして情報を探すと、HPEのページにまとまったいいものを発見・・・「RedHat Linux 7.1 での NIS 構築手順」・・・・あれ?

あれ?これ、RedHat Enterprise Linuxになる前のRedHat Linux 7.1のドキュメントか!・・・というわけでコレは使えません。

改めて探すと、最新のNISサーバの立て方としては、RedHat Identity ManagementのNISサーバープラグインを使用する、というもののようである。

また、firewalld関連でセキュリティガイドの「4.3.4. rpcbind のセキュア化」「4.3.6. NIS のセキュア化」における設定変更も必要そうである。

とりあえず、firewalldに必要な設定を実施する。上記ドキュメントではsource IPアドレスの範囲を指定しているが、テスト環境であるため指定を省略する。

今回は既存のsambaによるActiveDirectoryサーバ上に立てるので、下記の様な結果となった。

[root@adserver ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources:
  services: dhcpv6-client dns freeipa-ldaps freeipa-trust nfs samba ssh
  ports: 49152-65535/tcp 3269/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

[root@adserver ~]# firewall-cmd --permanent --zone=public --add-port=111/tcp
success
[root@adserver ~]# firewall-cmd --permanent --zone=public --add-port=111/udp
success
[root@adserver ~]# firewall-cmd --permanent --zone=public --add-port=834/tcp
success
[root@adserver ~]# firewall-cmd --permanent --zone=public --add-port=834/udp
success
[root@adserver ~]# firewall-cmd --permanent --zone=public --add-port=835/tcp
success
[root@adserver ~]# firewall-cmd --permanent --zone=public --add-port=835/udp
success
[root@adserver ~]# firewall-cmd --reload
success
[root@adserver ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources:
  services: dhcpv6-client dns freeipa-ldaps freeipa-trust nfs samba ssh
  ports: 49152-65535/tcp 3269/tcp 111/tcp 111/udp 834/tcp 834/udp 835/tcp 835/udp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

[root@adserver ~]#

で、NISサーバのインストールについては、LDAPサーバを立てなければいけない「21.2. IDENTITY MANAGEMENT で NIS を有効にする」という手法では無く、伝統的なypservを起動する方とした。

ypservパッケージと管理ツールのyp-toolsが必要なのでインストールは「yum install ypserv yp-tools」と実行する

[root@adserver ~]# yum search ypserv yp-tools
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
============================= N/S matched: ypserv ==============================
ypserv.x86_64 : The NIS (Network Information Service) server

  Name and summary matches only, use "search all" for everything.
[root@adserver ~]# yum install ypserv yp-tools
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * epel: ftp.riken.jp
 * extras: ftp.riken.jp
 * updates: ftp.riken.jp
依存性の解決をしています
--> トランザクションの確認を実行しています。
<略>
依存性を解決しました

================================================================================
 Package              アーキテクチャー
                                     バージョン              リポジトリー  容量
================================================================================
インストール中:
 ypserv               x86_64         2.31-12.el7             base         156 k
 yp-tools          x86_64          2.14-5.el7               base           79 k
依存性関連でのインストールをします:
 tokyocabinet         x86_64         1.4.48-3.el7            base         459 k
 ypbind            x86_64          3:1.37.1-9.el7           base           62 k

トランザクションの要約
================================================================================
インストール  2 パッケージ (+2 個の依存関係のパッケージ)

総ダウンロード容量: 615 k
インストール容量: 1.7 M
Is this ok [y/d/N]: y
Downloading packages:
<略>
インストール:
  ypserv.x86_64 0:2.31-12.el7
  yp-tools.x86_64 0:2.14-5.el7

依存性関連をインストールしました:
  tokyocabinet.x86_64 0:1.4.48-3.el7
  ypbind.x86_64 3:1.37.1-9.el7

完了しました!
[root@adserver ~]#

インストールが終わるとちゃんとypserv,yppasswdd,ypxfrdがsystemdに登録されていることが確認できる。

[root@adserver ~]# systemctl list-unit-files|grep yp
hypervfcopyd.service                          static
hypervkvpd.service                            static
hypervvssd.service                            static
yppasswdd.service                             disabled
ypserv.service                                disabled
ypxfrd.service                                disabled
cryptsetup-pre.target                         static
cryptsetup.target                             static
remote-cryptsetup.target                      disabled
[root@adserver ~]#

昔のドキュメントを見ると、NISドメイン名を設定するために/etc/sysconfig/networkに「NISDOMAIN=ドメイン名」を追加するとあるが、RHEL7/CentOS7でも有効であるのかがよく分からない。

systemdからypserv.serviceを起動する時に読み込むファイル「/usr/lib/systemd/system/ypserv.service」の内容を確認すると下記の様になっていた。

[Unit]
Description=NIS/YP (Network Information Service) Server
Requires=rpcbind.service
After=syslog.target network.target rpcbind.service

[Service]
Type=notify
NotifyAccess=all
EnvironmentFile=-/etc/sysconfig/network
ExecStart=/usr/sbin/ypserv -f $YPSERV_ARGS
PrivateTmp=true

[Install]
WantedBy=multi-user.target

環境ファイルとして「/etc/sysconfig/network」を読み込んでいるので、現在も有効な手法なようである。

[root@adserver ~]# cat /etc/sysconfig/network
# Created by anaconda
[root@adserver ~]# echo NISDOMAIN=nisdom >> /etc/sysconfig/network
[root@adserver ~]# cat /etc/sysconfig/network
# Created by anaconda
NISDOMAIN=nisdom
[root@adserver ~]#

ypservを起動してログを確認。

[root@adserver ~]# systemctl start ypserv
[root@adserver ~]# systemctl status ypserv -l
● ypserv.service - NIS/YP (Network Information Service) Server
   Loaded: loaded (/usr/lib/systemd/system/ypserv.service; enabled; vendor preset: disabled)
   Active: active (running) since 月 2019-12-09 18:55:17 JST; 12s ago
 Main PID: 1555 (ypserv)
   Status: "Processing requests..."
   CGroup: /system.slice/ypserv.service
           mq1555 /usr/sbin/ypserv -f

12月 09 18:55:17 adserver.adosakana.net systemd[1]: Starting NIS/YP (Network Information Service) Server...
12月 09 18:55:17 adserver.adosakana.net ypserv[1555]: WARNING: no securenets file found!
12月 09 18:55:17 adserver.adosakana.net systemd[1]: Started NIS/YP (Network Information Service) Server.
[root@adserver ~]#

/var/yp/securenets ファイルが無いことについて警告が表示されているが無視する。

NISデータベースの初期化について「/usr/lib/yp/ypinit -m」と書いてあるやつもあるが、いまどきは64bitなので「/usr/lib64/yp/ypinit -m」となる。

また、ypinit実行前にnisdomainnameコマンドでNISドメイン名を設定する必要がある。

[root@adserver ~]# nisdomainname
nisdomainname: Local domain name not set
[root@adserver ~]# nisdomainname nisdom
[root@adserver ~]# nisdomainname
nisdom
[root@adserver ~]# /usr/lib64/yp/ypinit -m

At this point, we have to construct a list of the hosts which will run NIS
servers.  adserver is in the list of NIS server hosts.  Please continue to add
the names for the other hosts, one per line.  When you are done with the
list, type a <control D>.
        next host to add:  adserver
        next host to add:
The current list of NIS servers looks like this:

adserver

Is this correct?  [y/n: y]  y
We need a few minutes to build the databases...
Building /var/yp/nisdom/ypservers...
Running /var/yp/Makefile...
gmake[1]: ディレクトリ `/var/yp/nisdom' に入ります
Updating passwd.byname...
Updating passwd.byuid...
Updating group.byname...
Updating group.bygid...
Updating hosts.byname...
Updating hosts.byaddr...
Updating rpc.byname...
Updating rpc.bynumber...
Updating services.byname...
Updating services.byservicename...
Updating netid.byname...
Updating protocols.bynumber...
Updating protocols.byname...
Updating mail.aliases...
gmake[1]: ディレクトリ `/var/yp/nisdom' から出ます

adserver has been set up as a NIS master server.

Now you can run ypinit -s adserver on all slave server.
[root@adserver ~]#

これで設定はできたので、yppasswddの起動と、ypserv/yppasswddが常時起動するように設定変更を行う。

[root@adserver ~]# systemctl start yppasswdd
[root@adserver ~]# systemctl enable ypserv.service
Created symlink from /etc/systemd/system/multi-user.target.wants/ypserv.service to /usr/lib/systemd/system/ypserv.service.
[root@adserver ~]# systemctl enable yppasswdd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/yppasswdd.service to /usr/lib/systemd/system/yppasswdd.service.
[root@adserver ~]#

2022/08/12追記

NISサーバ上でypcatは使えない

「NISサーバはNISクライアントではないのでypcatコマンドによる情報表示はエラーとなる」

NISサーバ上で「ypcat -x」を実行すると下記が出力される

# ypcat -x
Use "ethers"    for map "ethers.byname"
Use "aliases"   for map "mail.aliases"
Use "services"  for map "services.byname"
Use "protocols" for map "protocols.bynumber"
Use "hosts"     for map "hosts.byname"
Use "networks"  for map "networks.byaddr"
Use "group"     for map "group.byname"
Use "passwd"    for map "passwd.byname"
#

しかし「ypcat passwd」を実行するとエラーになる。

# ypcat passwd
No such map passwd.byname. Reason: Can't bind to server which serves this domain
#

これはypcatコマンドはNISクライアントデーモンのypbindコマンドと通信して情報を取ってくるため、ypbindが起動していないNISサーバ上では通信相手(ypbind)がいないためエラーとなっている、という話。

ypcat passwdはNISクライアント側で実行しろ、ということでした。

iredmail運用メモ 2021/09/09版

2019/12/06版:新規作成
2021/09/09版:更新


2021/09/09版前書き

2019年7月ぐらいから postfix+dovecot+iredmail環境の運用を開始し、2年が経過しました。

追加1:salesforce.comからのメールに対するgreylist適用取りやめ

salesforce.comからのメールは「23sadf984tasd.49fv2fdsdf.k54hsd74.ap23.bnc.salesforce.com」というような差し出しアドレスで送信されており、このアドレスはユーザごとに違うらしいようで、自動処理がうまくできませんでした。

調べて見るとiredmailフォーラム「How do I whitelist this sender?」にて、「python2 greylisting_admin.py –disable –from @.salesforce.com を実行してgreylist対象外にしろ」という回答が・・・

[root@mailserver ~]# /opt/iredapd/tools/greylisting_admin.py --disable --from @.salesforce.com
* Disable greylisting: @.salesforce.com -> @.
[root@mailserver ~]#

これで、salesforce.comからのメールは全て届くようになりました。

追加2:特定IPアドレスから送信されるメールの取り扱い

ユーザが開設しているウェブにあるフォームから送られてくるメールの送信者設定がうまく調整できないらしく、不適切なもので送信されてくる。

仕方が無いので、そのウェブサーバのIPアドレスから送られてくるメールへのgreylist適用をやめた

[root@mailserver ~]# /opt/iredapd/tools/greylisting_admin.py --disable --from  1xx.2xxx.1xx.1xxx
* Disable greylisting: 1xx.2xxx.1xx.1xxx -> @.
[root@mailserver ~]#


2019/12/06版前書き

qmail+vpopmailの環境からpostfix+dovecot+iredmail環境にテスト移行してもうすぐ1年、本稼働させて5ヶ月経ちました。

いろいろ行った対処についてのまとめです。

その1: Windows Live Mail 2012ユーザがいる場合の問題

iredmailの標準設定ではWindows Live Mail 2012でのPOP3アクセスによるメール受信に失敗します。原因はWindows Live Mail 2012はSSL無し+メールパスワードを平文で送ってしまうが、iredmail側では平文拒否+SSLのみ受付、という設定であるため拒否されているためです。

また、メール送信時も、Windows Live Mail 2012がメールサーバに送るホスト名情報(HELOコマンド)がiredmailが期待する書式になっていないために拒否されます。

この2点を解消するためにdovecotの設定と、postfixの設定を変更する必要があります。詳細は下記を参照のこと。

詳細:[postfix/dovecotメールサーバでWindows Live Mail 2012がエラーになる]

その2: WebメールのRoundcubeをアップデートする場合の問題

iredmailではWebメールとしてRoundcubeSOGoを利用できます。

SOGoはRPM提供なのでアップデートは簡単ですが、Roundcubeはphpコマンドを利用してのアップデートとなっています。

しかし、iredmail標準設定ではセキュリティ強化のphp設定がされているため、Roundcubeのアップデートスクリプトが必要とするphpの機能が使用できない状態となっています。

phpの設定を変更せずにroundcubeのアップデートスクリプトを実行するには下記を参照してください。

詳細:[php.iniを変更せずにdisable_functionsの内容を無効化してroundcubeのアップグレードスクリプトを動作させる方法]

その3: 自サーバ以外で送信されたメールが受信拒否になる問題

iredmail標準設定では、iredmailサーバ以外から送信された自ドメインメールを受信拒否します。

これは、iredapdの機能で拒否しています。

iredapdの設定にSPFレコードに登録されているサーバからの送信であれば許可する、という設定があるのでそれを有効にして回避します。

詳細:[postfixを使用したiredmailで他サーバで送信された自ドメインメールが受信拒否される]

その4: Barracudacentralがメールを拒否しすぎる問題

本格運用しはじめてからログを確認してみると、BarracudacentralのSPAMデータベースを参照にしたメール受信拒否率がとても高いことが判明。

ちょっとでも疑われたら登録されているレベルのようなので誤爆率がかなり高い。特に中小企業からのメールと(ちゃんとした)メルマガ系での拒否率が高すぎた。

このため、うちのサイトの運用ではbarracudacentralの使用はやめて、spamhaus.orgのみの運用にしている。

[iRedMailの初期設定から変えたところ 2018/08/21版]

その5: mail.goo.ne.jpメールが拒否される問題

iredmailが用意している/etc/postfix/helo_access.pcreを見てみると、なんとmail.goo.ne.jpメールが明示的に拒否されていた。

いったい過去に何をやらかしたのか・・・と驚愕しつつも受信できるように設定変更している。

[iRedMailの初期設定から変えたところ 2018/08/21版]

その6: ホスト名にIPアドレスっぽい文字列が入っていると拒否される問題

SPAMを送信してくるIPアドレスについてホスト名を調べて見るとIPアドレスっぽいホスト名( network-192-168.0.100.ぷろばいだ.ne.jp )であることが多い。

このため、iredmail標準設定ではこういったホスト名からのメールは拒否しているが、拒否ログを確認してみると、Amazon AWSサービスを使っているところからのメールが結構そんな感じのホスト名で送られていて、拒否率も高かった。

このため、IPアドレスっぽいホスト名からのメールは拒否、という設定を外した。

[iRedMailの初期設定から変えたところ 2018/08/21版]

その7: メールがすぐに届かず30分程度遅延する問題

SPAMメールの送信システムは再送処理は行わず、送信できなかったらすぐに次を送るような実装になっていることが多い。

このため、iredmailでは1回目の送信処理では、今忙しいからあとでもう1回送って、と返して、15分後から受信するようになっている。

しかし、分かっているドメインからのメールだったらすぐに受信できるようにしたい、という場合はwhitelistdomainを設定することで、該当するドメインでDNSのSPFレコードに登録されているメールサーバからのメールであればすぐに受信する、という設定を行っている。

[iRedMailの初期設定から変えたところ 2018/08/21版]

その6: vpopmailからユーザパスワードを移行した場合の問題点

これは該当する人があまりいないと思いますが、vpopmailで使っていたパスワード文字列(MD5エンコード)をそのままiredmailに持ってくると、dovecotとpostfixでは使えます。

しかし、SOGoとiredmailの管理画面ではSHA256エンコードであると想定した処理となっているため使えず、ログインできません。

これはどうしようもないので、パスワードを再設定してください。

[ユーザバックエンドがSQLのiredmailのSOGoでユーザがログインできない]

NetAppのperfstatデータ収集ツールで取得したファイルを分解する

現用のNetAppの状況確認をするために「perfstatデータ収集ツール」というのが配布されている。
注:ONTAP 9.5以降はperfstatは非対応とのこと

rsh/sshで対象のNetAppにログインして、いろんなコマンドを実行して、1つのテキストファイルとして出力をする。

この「1つのテキストファイル」というのがくせ者で、200MBぐらいのファイルができたりする。

これだとエディタで取り扱いづらいので細かく分割することにした。

中をみてみると「=-=-=-=-=-= CONFIG IPアドレス PRESTATS =-=-=-=-=-= aggr status -v」という感じで「 =-=-=-=-=-= 」区切りでファイルが出力されている。

それを元にファイルを分割したのが下記スクリプト。

$inputfile="x:\tmp\source\perfstat7_20191122_1400.txt"
$outdir="x:\tmp\output"

$filename=""

Get-Content $inputfile -Encoding UTF8 | ForEach-Object {
    $line=$_
    if( $line.Contains("=-=-=-=-=-=") ){
        $filename=$line
        $filename=$filename.Replace("=-=-=-=-=-= ","")
        $filename=$filename.Replace("/","-")
        $filename=$filename.Replace(":","")
        $filename=$outdir+"\"+$filename+".txt"
        New-Item $filename
    }
    if($filename -ne ""){
        $line | Add-Content $filename
    }
}

今回は1回しか実行しないので速度を気にする必要がないので簡単さを優先している。

もし、出力速度を気にするのであれば1行毎にAdd-Contentするのは非常に効率が悪いので工夫が必要となる。

参考例:「PowerShellで巨大なファイルをGet-Contentし、Export-Csvするのを省メモリで行う


2019/11/25 追記

上記のスクリプトだと遅すぎで、約200MBのファイル処理に5時間かかりました。

やはり改行のみ行が数万行ある、というのが悪かったようです。

また、同じヘッダ行が何回か登場するようで単純に「New-Item」としているとファイル名が重複しているというエラーがでてしまっていました。

さすがに5時間はないなーということで、高速化処理をしたのが下記となります。

実行にかかる時間は2分と大幅短縮となりました。

$inputfile="x:\tmp\source\perfstat7_20191122_1400.txt"
$outdir="x:\tmp\output2"

$filename=""

$results=@()
$linecount=0

Get-Content $inputfile -Encoding UTF8 | ForEach-Object {
    $line=$_
    if( $line.Contains("=-=-=-=-=-=") ){
        if($filename -ne ""){
            $results | Add-Content $filename
            $results=@()
            $linecount=0
        }
        $filename=$line
        $filename=$filename.Replace("=-=-=-=-=-= ","")
        $filename=$filename.Replace("/","-")
        $filename=$filename.Replace(":","")
        $filename=$outdir+"\"+$filename+".txt"
        if ( !(Test-Path $filename) ){
            New-Item $filename
        }
    }

    if($filename -ne ""){
        $results += $line
        $linecount++
        if(($linecount % 1000) -eq 0 ){
            $results | Add-Content $filename
            $results=@()
        }
    }
}

技適未取得機器を用いた実験等の特例制度で使えるものは何か確認してみた

技適未取得機器を用いた実験等の特例制度」の「技適未取得機器を用いた実験等の特例制度 関係法令」を見ると下記の記載がある。

法第四条の二第二項の規定により法第三章に定める技術基準に相当する技術基準として総務大臣が指定する技術基準は、次のいずれかに該当するものとする。
一 法第三章に定める技術基準
二 国際電気通信連合無線通信部門の勧告M.1450-5に定める技術基準及び米国電気電子学会が定める規格のうち、次のいずれかのもの
1 IEEE802.11b
2 IEEE802.11a
3 IEEE802.11g
4 IEEE802.11n
5 IEEE802.11ac
6 IEEE802.11ad
7 IEEE802.11ax(Draft 1.0からDraft 4.0まで)
三 Bluetooth SIGが定める規格のうち、Bluetooth Core Specification Version 2.1からVersion 5.1までのいずれかのもの
四 米国電気電子学会が定める規格のうち、IEEE802.15.4
五 一般社団法人電波産業会が定める規格のうち、ARIB STD-T107又はARIB STD-T108
六 LoRa Allianceが定める規格のうち、LoRaWAN AS923
七 Sigfox S.A.が定める規格のうち、Sigfox RC3
八 国際電気通信連合電気通信標準化部門の勧告G.9959に定める技術基準
九 米国電気電子学会が定める規格のうち、IEEE802.15.4g
十 XGPフォーラムが定める規格のうち、A-GN6.00
十一 欧州電気通信標準化機構が定める規格のうち、ETSI TS 103 357 Lfour family
十二 欧州電気通信標準化機構が定める規格のうち、ETSI EN 302 264又はETSI EN 303 360

これらの示す機器が具体的に何であるのかを確認した。

一 法第三章に定める技術基準

該当の記述は「電波法 第三章の二 特定無線設備の技術基準適合証明

「技術基準適合証明」と「特定無線設備の工事設計についての認証」の双方を指している
一般的には両者をあわせて「技適など」と表現される。

二 国際電気通信連合無線通信部門の勧告M.1450-5に定める技術基準及び米国電気電子学会が定める規格のうち、次のいずれかのもの

1 IEEE802.11b
2 IEEE802.11a
3 IEEE802.11g
4 IEEE802.11n
5 IEEE802.11ac
6 IEEE802.11ad
7 IEEE802.11ax(Draft 1.0からDraft 4.0まで)
まぁ、2.5GHzと5Ghzを使用するWiFiのことである。

三 Bluetooth SIGが定める規格のうち、Bluetooth Core Specification Version 2.1からVersion 5.1までのいずれかのもの

そのままBluetoothデバイスである。

四 米国電気電子学会が定める規格のうち、IEEE802.15.4

LR-WPAN(Low Rate Wireless Personal Area Network)である ZigBee,Wi-SUN,EchoNet Liteなどのスマートグリッド機器などが該当すると思うが、後述の802.15.4gとの違いがいまいち認識出来ていない。

920MHz帯を使用する機器を想定しているものと思われる。

五 一般社団法人電波産業会が定める規格のうち、ARIB STD-T107又はARIB STD-T108

ARIB STD-T107は「特定小電力無線局920MHz帯移動体識別用無線設備」でスマートタグ

ARIB STD-T108は「920MHz帯テレメータ用、テレコントロール用およびデータ伝送用無線設備」で、Z-Waveなど。また、後述するG.9959相当

六 LoRa Allianceが定める規格のうち、LoRaWAN AS923

「LoRaWAN V1.0.2 forAS923MHz ISM Band(AS923)」というのは

ヨーロッパ向け認証プログラムをベースとし、日本を含むアジア 10 カ国向けに周波数帯(923MHz)などを変更した認証プログラム。対象国は、日本、ブルネイ、カンボジア、インドネシア、ラオス、ニュージーランド、シンガポール、台湾、タイ、ベトナムの 10 の国や地域

https://www.toyo.co.jp/files/user/corporate/doc/release/170905_TOYO_LoRaWANAS923_65135.pdf

LoRaWAN® Regional Parameters」によるとChannel Planは10種類あるようだ。

七 Sigfox S.A.が定める規格のうち、Sigfox RC3

Sigfoxの「Geographical zones」の「RC3」は日本向け設定という意味で、923.200MHzを使用する。

なお、RC1~RC7まであるが全部使用する周波数が異なるので地域違いは使うことができない。

八 国際電気通信連合電気通信標準化部門の勧告G.9959に定める技術基準

G.9959 : Short range narrow-band digital radiocommunication transceivers – PHY, MAC, SAR and LLC layer specifications」でARIB STB-T108 相当(Z-waveなど)

九 米国電気電子学会が定める規格のうち、IEEE802.15.4g

すでに登場しているIEEE802.15.4の詳細規格で、スマートメーター用の規格・・・という認識でいいのだろうか?

十 XGPフォーラムが定める規格のうち、A-GN6.00

sXGP (shared XGP) Specifications Version 1」で1.9GHzを使用する新自営システム

周波数帯域を1.9GHz帯としたTD-LTE方式の小電力携帯電話システムで、構内PHSの代わりに使用されることになるが、スマホが流用できるので期待されているもの。

十一 欧州電気通信標準化機構が定める規格のうち、ETSI TS 103 357 Lfour family

Short Range Devices;Low Throughput Networks (LTN);Protocols for radio interface A

一見、EU圏発祥の規格っぽいが、「SONY ELTRES」で920MHz帯を使用する。

十二 欧州電気通信標準化機構が定める規格のうち、ETSI EN 302 264又はETSI EN 303 360

ETSI EN 302 264は「Short Range Devices;Transport and Traffic Telematics (TTT); Short Range Radar equipment operating in the 77 GHz to 81 GHz band; Harmonised Standard covering the essential requirements of article 3.2 of Directive 2014/53/EU

77GHz~81GHz帯を使用する機器。79GHz帯高分解能レーダシステムで、ARIB STD-T111「79GHz帯高分解能レーダー」

ETSI EN 303 360「Short Range Devices; Transport and Traffic Telematics (TTT); Radar equipment operating in the 76 GHz to 77 GHz range; Harmonised Standard covering the essential requirements of article 3.2 of Directive 2014/53/EU; Obstacle Detection Radars for Use on Manned Rotorcraft

76GHz~77GHz帯を使用する機器。76GHz帯ミリ波レーダシステムで ARIB STD-T48「特定省電力無線局ミリ波レーダー用無線設備」

どちらも車載レーダーとして使用されるため、自動運転用のシステム関連と想定される。(下記は「電波防護に関する国外の基準・規制動向調査」からの引用」