eSIM対応デバイスのメモ 2019/09/06版

IIJがeSIM対応を始めた。(国内初、IIJmioでeSIM対応のデータ通信サービスを開始)

現時点でeSIM対応デバイスというのは何があるのかを調べて見た。

後述するページにかいてあったものをまとめると、以下のような感じだ。

Apple

AppleのサポートページにあるeSIMに関する記述:「eSIM でデュアル SIM を活用する

Apple iPhone XS (香港,マカオモデルも含む,中国モデルは無い?)
Apple iPhone XS Max (香港,マカオ,中国モデルは物理的なデュアルSIM)
Apple iPhone XR (香港,マカオ,中国モデルは物理的なデュアルSIM)
Apple 11インチ iPad Pro
Apple 12.9インチ iPad Pro (第3世代)
Apple Air (第3世代)
Apple iPad mini (第5世代)

Apple Watchについては標準のeSIM対応手順ではないようで、ちょっと厳しいようだ

Apple Watch Series 3 (GPS+Cellularモデル)
Apple Watch Series 4 (GPS+Cellularモデル)

Android

Google Pixel 2/3/3XLの日本向け端末ではeSIMのかわりにFelicaモジュールが導入されているため使用できない。一部にオーストラリア版もeSIMがない、という記述があったが、どうやらSIMロックがかかっているPixelがいくつかの携帯電話会社から販売されているようで、それだとeSIMが使えないらしい。
Pixel Phone Helpフォーラム「Pixel 3/3XL eSIM support in Australia」でOptusで買ったデバイスだとeSIMインタフェースが無いという事象の報告と、unlockしたやつだと表示されるという報告。
Pixel Phone Help「Get a SIM card & insert it into a Pixel phone」には「 if the phone was purchased in Japan  or if bought with Verizon or Charter service 」という注意書きだった)

Google Pixel 2 (日本以外)
Google Pixel 3 (日本以外)
Google Pixel 3XL (日本以外)
Google Pixel 3a (日本以外)
Google Pixel 3a XL (日本以外)

Planet Gemini PDA (4Gモデル)
Planet Comso Communicator (4Gモデル)

パソコン系

Windows10でのeSIM設定について「eSIM を使って Windows 10 PC で携帯データ ネットワーク接続を利用する

Microsoft Surface Pro LTE Advanced
Lenovo Yoga 630 (snapdragon850搭載Windows)
HP Spectre Folio 13 (日本ではeSIMモデル未販売)
ASUS TransBook Mini T103HAF-LTE,T103HAF-GR079LTE(ただしIIJのeSIMではトラブル発生中)
Acer Swift 7
Acer Swift 3(こちらは物理eSIMカードのようだ)

Android Wear系(時計)

Huawei Watch 2 Pro (2018モデル)
Samsung Gear S2 classic(3G電波のみ対応)
Samsung Gear S3
Samsung Galaxy Watch


参照情報一覧

・Apple 「eSIM でデュアル SIM を活用する」と「2 枚の nano-SIM カードでデュアル SIM を使う

iPhone XS、iPhone XS Max、iPhone XR は、nano-SIM と eSIM を使ったデュアル SIM に対応しています。(1)

eSIM はデジタル SIM なので、物理的な nano-SIM を使うことなく、通信事業者 (キャリア) のモバイル通信プランをアクティベートすることができます。

(1)iPhone の eSIM は、中国大陸では提供予定がありません。香港およびマカオでは、iPhone XS だけが eSIM を搭載しています。中国大陸、香港、マカオでの 2 枚の nano-SIM を使ったデュアル SIM については、こちらの記事を参照してください。

eSIM でデュアル SIM を活用する

中国大陸以外にいる場合や、香港やマカオで iPhone XS をお使いの場合は、eSIM でデュアル SIM を活用する方法をこちらの記事でご確認ください。

2 枚の nano-SIM カードでデュアル SIM を使う

IIJmio eSIMプラン

動作確認済端末(2019年7月4日現在)
Microsoft Surface Pro LTE Advanced
Apple iPhone XS、iPhone XS Max、iPhone XR
Apple 11インチiPad Pro、12.9インチiPad Pro(第3世代)、iPad Air(第3世代), iPad mini(第5世代)
(※)Apple Watch Series 3/Series 4 (GPS + Cellularモデル)では動作しません。

Ubigi eSIMの互換性ガイド

1. List of compatible eSIM devices: 
Smartphones with embedded eSIM*:iphone XS,
iPhone XS Max,
iPhone XR,
Google Pixel 3
*if your phone is locked to your carrier, you will not be able to install Ubigi on its eSIM.
Windows 10 PCs:Lenovo Yoga 630,
HP Spectre Folio
Tablets with embedded eSIM:iPad Air (3rd Generation)
iPad Pro (3rd Generation)
iPad Mini (5th Generation)
Gemini PDA

FLEXIROAM eSIM

Currently supported devices: iPhone XS, XS Max, XR, Pixel 3, Pixel 3 XL
*Not supported by iPhone XR and XS Max purchased in Hong Kong, Macau and Mainland China
*Not supported by Pixel devices purchased in Australia
Same day activation, no contract required!

・CANSTAR BLUEの「What is an eSIM? Providers & Features Explained

ここはいろんな紹介ページだけど、機種がまとまっている。

Watches with eSIM Compatibility
Huawei Watch 2 Pro
Apple Watch Series 3
Apple Watch Series 4
Samsung Gear S2
Samsung Gear S3
Samsung Galaxy Watch
Selected phones with eSIM Compatibility
Google Pixel 2
Google Pixel 3
Samsung Galaxy Note 9
Samsung Galaxy S9, S9+
iPhone XS
iPhone XS Max

・hp「HPビジネス向けノートブックとモバイルワークステーションPC – eSIM対応のWWANモジュールを搭載したコンピューターでは、SIMが装備されていると、スマートカード認証に失敗する場合がある

hpの場合、内部拡張カードのWWANモジュール上にeSIM対応モジュールを採用しているので、カードの採用具合によってeSIM対応していたりするようだ。

eSIM対応のWWANモジュールは次の機器に装備されています:
インテルXMM 7360 LTE-Advanced
インテルXMM 7560 LTE-Advanced Pro
インテルXMM 7262 LTE-Advanced
HP LT4132 LTE/HSPA+ 4Gモバイルブロードバンドモジュール
Snapdragon X12 LTE-Advanced

次のWWANモジュールは、当初eSIM機能なしで出荷されましたが、eSIM機能はファームウェアの更新で有効にできます:
インテルXMM 7360 LTE-Advanced: SoftPaq sp91807でeSIM機能を有効にできます
HP LT4132 LTE/HSPA+ 4Gモバイルブロードバンドモジュール:SoftPaq sp84042でeSIM機能を有効にできます

eSIM対応のWWANモジュールを搭載できるコンピューター:
HP Elite x2 1012 G2
HP Elite x2 1013 G3
HP EliteBook 1040 G4ノートブックPC
HP EliteBook 725 G4ノートブックPC
HP EliteBook 735 G5ノートブックPC
HP EliteBook 745 G4ノートブックPC
HP EliteBook 745 G5ノートブックPC
HP EliteBook 755 G4ノートブックPC
HP EliteBook 755 G5ノートブックPC
HP EliteBook 820 G4ノートブックPC
HP EliteBook 828 G4ノートブックPC
HP EliteBook 830 G5ノートブックPC
HP EliteBook 836 G5ノートブックPC
HP EliteBook 840 G4ノートブックPC
HP EliteBook 840 G5 Healthcare EditionノートブックPC
HP EliteBook 840 G5ノートブックPC
HP EliteBook 840r G4ノートブックPC
HP EliteBook 846 G5ノートブックPC
HP EliteBook 848 G4ノートブックPC
HP EliteBook 850 G4ノートブックPC
HP EliteBook 850 G5ノートブックPC
HP EliteBook x360 1030 G2ノートブックPC
HP EliteBook x360 1030 G3ノートブックPC
HP EliteBook x360 1040 G5ノートブックPC
HP EliteBook x360 830 G5ノートブックPC
HP EliteBook x360 830 G6ノートブックPC
HP ProBook 430 G4ノートブックPC
HP ProBook 440 G4ノートブックPC
HP ProBook 450 G4ノートブックPC
HP ProBook 640 G3ノートブックPC
HP ProBook 640 G4ノートブックPC
HP ProBook 645 G3ノートブックPC
HP ProBook 645 G4ノートブックPC
HP ProBook 650 G3ノートブックPC
HP ProBook 650 G4ノートブックPC
HP ProBook 655 G3ノートブックPC
HP ProBook x360 440 G1ノートブックPC
HP ZBook 14u G4 Mobile Workstation
HP ZBook 14u G5 Mobile Workstation
HP ZBook 15 G4 Mobile Workstation
HP ZBook 15 G5 Mobile Workstation
HP ZBook 15u G4 Mobile Workstation
HP ZBook 15u G5 Mobile Workstation
HP ZBook 17 G5 Mobile Workstation
HP ZBook Studio G5 Mobile Workstation

・gemalto「eSIM搭載コンシューマIoTデバイスをアクティベートする3つの方法

SIMメーカの1つジェムアルトに掲載されているeSIMデバイスにどうやって契約情報を紐つけるか、という手法には3種類あります、といった解説。

今回、IIJmioで提供が始まったのは契約固有のQRコードを読みとる「QRコードによるアクティベーション」となる。

スマホ/パソコン上のアプリからオンライン契約処理をして使える様にする、というのは「GSMAのルートディスカバリーサービスによるeSIMアクティベーション」となる。

どちらの手法もeSIM搭載端末がWiFiなどの別の手法で契約管理を行うサーバにアクセスできる必要があります。

・IIJてくろぐ「IIJmio モバイルサービス eSIMプラン (ベータ版) に関する諸情報

ASUS TransBook Mini T103HAF-LTE, T103HAF-GR079LTEのeSIMで読み込みを行うと本体修理が必要になる、という記述。

UbigiのUbigiサービスの利用条件

フリーロック eSIMプレインストールUbigi SIM
スマートフォン【iOS】 iPhone XS/XR
iOS 12.1以降)
タブレット【iOS】 iPad Air、iPad Pro、iPad Mini
【Android】 Gemini PDA
ノートPCLenovo Yoga 630
HP Spectre Folio
Surface Pro 5 LTE AdvancedASUS Mini Transformer T103HAFACER Swift 7VAIO Series 11/13/Pro PF/PGACER Swift 3

ACER 4G LTEページ

Swift 7 には eSIM が内蔵されています。Swift 3 eSIM は取り外し可能です。

Zentyalを日本語で使う場合の設定手順

Linux(Ubuntu 16.04 LTS)ベースでDHCPサーバ/ファイヤーウォール/NATルータ/ActiveDirectory/Exchange互換サーバなどを提供できるアプライアンス「zentyal」を久々にセットアップ。 (以前はzentyal.orgだったのが、zentyal.comに統合された)

2019/07/02追記:Ubuntu 18.04.1 LTSベースのZentyal 6.0です。この記事はZentyal 5.1の時に作成していますが、Zentyal 6.0でも同じでした。
2021/08/12追記:Ubuntu 20.04.2 LTSベースのZentyal 7.0ですが、同じように日本語は化け、同じパッケージインストールで修正できました。

以前、日本語訳を投稿しておいたおかげで日本語を選択できるようになっていますが、注意点が1つ。
インストール時に日本語を設定してしまうと、firefoxが文字化けし、設定に難儀します。
まずはEnglishでインストールを行った上で、手動でパッケージを追加してから日本語に変更する必要があります。

1. EnglishでZentyalをインストール
2. 初回ログイン
3. シェルを開く
4. Ubuntuの日本語対応をインストール「sudo apt install language-pack-ja firefox-locale-ja」
5. 日本語表示用フォントをインストール「sudo apt install fonts-arphic-uming fonts-takao-pgothic」
6. zentyalの日本語対応をインストール「sudo apt install language-pack-zentyal-ja」
7. zentyalの設定画面で「日本語」を設定する。

2019/12/13追記: fonts-takao-pgothic でエラーとなる場合は fonts-takao-gothic で実施のこと

文字化け状態の例

文字化け解消後

なお、yahooのページだと「fonts-arphic-uming」だけでも大丈夫だったが、zentyalではさらに「fonts-takao-pgothic」を追加する必要があった。
なお、 xfonts-intl-japanese では文字化けは直らなかった。

HPE OfficeConnect 1950スイッチをシリアルケーブルで設定できるのか?

HPE OfficeConnect 1950はマニュアルを読む限り設定はWebでしかできないように書かれている。
しかし、設定をExportしたファイルを見ると、HPE 5800と同様のフォーマットで設定が書かれている。
本当にシリアルで設定ができないのか?

まず、シリアルは38400bpsで接続する。

初期は「admin」で、パスワードは無い。

******************************************************************************
* Copyright (c) 2010-2017 Hewlett Packard Enterprise Development LP          *
* Without the owner's prior written consent,                                 *
* no decompiling or reverse-engineering shall be allowed.                    *
******************************************************************************

Line aux0 is available.


Press ENTER to get started.
login: admin
Password:
<HPE>%Mar 19 13:31:25:657 2018 HPE SHELL/5/SHELL_LOGIN: admin logged in from aux0.

「?」を入力すると、いま使えるコマンド一覧が出てくる。

<HPE> ?
User view commands:
  display       Display current system information
  exit          Alias for 'quit'
  initialize    Delete the startup configuration file and reboot system
  ipsetup       IP configuration
  no            Alias for 'undo'
  password      Specify password of local user
  ping          Ping function
  poe           Power over Ethernet
  quit          Exit from current command view
  reboot        Reboot operation
  show          Alias for 'display'
  summary       Display summary information of the device
  telnet        Establish a telnet connection
  transceiver   Enable transceiver phony alarm
  undo          Cancel current setting
  upgrade       Upgrade the system boot file or the Boot ROM program
  xtd-cli-mode  Switch to extended CLI mode to display and execute all commands
                (special authorization required)

<HPE>

Web GUIでエクスポートした設定はHPE 5800相当なのに、使えるコマンドは全然違う。

とりあえず片っ端から入力してみれば、最後の「xtd-cli-mode」が怪しそう。

<HPE>xtd-cli-mode
All commands can be displayed and executed in extended CLI mode. Switch to extended CLI mode? [Y/N]:y
Password:


パスワードを要求される。

調べてみると、パスワードがわかる。

Glazenbakje’s technical blog「HP v1910 Secret Commando list ( how to enable it )」のコメントに記載
俺の技術メモ「HP 1950 Switchのxtd-cli-modeパスワード
HPE Community「HP 1950 JG961A “xtd-cli-mode”

foes-bent-pile-atom-ship

<HPE>xtd-cli-mode
All commands can be displayed and executed in extended CLI mode. Switch to extended CLI mode? [Y/N]:y
Password:
Warning: Extended CLI mode is intended for developers to test the system. Before using commands in extended CLI mode, contact the Technical Support and make sure you know the potential impact on the device and the network.
<HPE>

プロンプトが変わる、ということもないため、変更が反映されたかがわかりません。
とりあえず「?」と入力し、コマンド一覧を出します。

<HPE>?
User view commands:
  archive             Archive configuration
  arp                 Address Resolution Protocol (ARP) module
  backup              Backup operation
  boot-loader         Software image file management
  bootrom             Update/read/backup/restore bootrom
  cd                  Change current directory
  cfd                 Connectivity Fault Detection (CFD) module
  clock               Specify the system clock
  copy                Copy a file
  debugging           Enable system debugging functions
  delete              Delete a file
  diagnostic-logfile  Diagnostic log file configuration
  dir                 Display files and directories on the storage media
  display             Display current system information
  erase               Alias for 'delete'
  exception           Exception information configuration
  exit                Alias for 'quit'
  fdisk               Partition a storage medium
  fixdisk             Check and repair a storage medium
  format              Format a storage medium
  free                Release a connection
  ftp                 Open an FTP connection
  gunzip              Decompress file
  gzip                Compress file
  install             Perform package management operation
  ip                  Specify IP configuration
  local-guest         Manage guest users
  lock                Lock the current line
  logfile             Log file configuration
  md5sum              Compute the hash digest of a file using the MD5 algorithm
  mkdir               Create a new directory
  monitor             System monitor
  more                Display the contents of a file
  mount               Mount a storage medium
  move                Move a file
  mtrace              Configure the multicast traceroute
  no                  Alias for 'undo'
  oam                 OAM module
  ping                Ping function
  process             Process management
  pwd                 Display current working directory
  python              Source using python script
  quit                Exit from current command view
  reboot              Reboot operation
  rename              Rename a file or directory
  repeat              Repeat executing history commands
  reset               Reset operation
  restore             Restore operation
  rmdir               Remove an existing directory
  save                Save current configuration
  scheduler           Scheduler configuration
  scp                 Establish an SCP connection to an SCP server
  screen-length       Multiple-screen output function
  security-logfile    Security log file configuration
  send                Send information to other lines
  sftp                Establish an SFTP connection to an SFTP server
  sha256sum           Compute the hash digest of a file using the SHA256
                      algorithm
  show                Alias for 'display'
  ssh2                Establish an Stelnet connection to an Stelnet server
  startup             Specify system startup parameters
  super               Switch to a user role
  system-view         Enter the System View
  tar                 Archive management
  tclquit             Exit from TCL shell
  tclsh               Enter the TCL shell
  telnet              Establish a telnet connection
  terminal            Set the terminal line characteristics
  tftp                Open a TFTP connection
  tracert             Tracert function
  umount              Unmount a storage medium
  undelete            Recover a deleted file
  undo                Cancel current setting
  web                 Web configuration
  write               Alias for 'save'
  xml                 Enter XML view
  xtd-cli-mode        Switch to extended CLI mode to display and execute all
                      commands (special authorization required)

<HPE>

大幅に増えました。

「show current-configuration」で現在の設定を確認できます。

<HPE> show current-configuration
#
 version 7.1.070, Release 5106p03
#
 sysname HPE
#
 clock timezone Tokyo add 09:00:00
 clock protocol ntp
#
 telnet server enable
<略>
#
user-group system
#
local-user admin class manage
 service-type telnet http https terminal
 authorization-attribute user-role network-admin
 authorization-attribute user-role network-operator
#
 ip http enable
 ip https enable
#
return
<HPE>

この結果は、Web GUIでエクスポートした設定ファイルと等しい状態でした。

ESXi 6.5でVMDirectPath I/Oが設定できるけど使えない

ESXi6.5環境において、16Gb FC HBAのQLogic QLE2662に対して、VMDirectPath I/Oで仮想マシンから直接使える様にパススルー設定をした。
設定は問題なくできたものの、仮想マシンを起動してみると、全然認識してくれない。

よく、パススルー設定で選択できない、という話は聞くが、今回は、設定は出来ている。

ためしに8GbのFC HBA QLE2540 を使ってみると、同様の手法で設定でき、仮想マシンからちゃんと認識している。

ここら辺に糸口があるな、と調査。


<調査過程は省略>

結論からすると「VMware vSphere VMDirectPath I/O:プラットフォームとデバイスの要件」(英語版:VMware vSphere VMDirectPath I/O: Requirements for Platforms and Devices)の「PCI 機能リセット」設定の問題だった。

パススルー設定したPCIeデバイスは、物理サーバ起動時に初期化しているが、接続されている仮想マシンが起動する毎にPCIeデバイスの初期化を行う必要がある。
この初期化手法をどういう風に行うか、という設定を適切に行わないと、仮想マシン側で認識できないようだ。

設定はESXi上の /etc/vmware/passthru.map で行われている。

うまく動いたQLE2540のVender ID/Product IDを「esxcfg-info」コマンドで確認すると「1077」「2523」。
これは /etc/vmware/passthru.map で「1077 2532 default false」という定義で設定されている。
意味は、初期化手法がdefaultで、fptShareableがfalseなので全体初期化になる、というもの。
全体初期化であるため、1枚に複数ポートがある場合、別の仮想マシンに割り当てることができず、同じ仮想マシンに全部のポートを割り当てる必要がある、ということになる。

動かなかったQLE2662の方は「1077」「2031」。
記載が無いので、適切な初期化方法を見つけて追加する必要がある。
KBに「PCI ホスト ブリッジ直下の PCI 機能を VMDirectPath I/O で使用するには、FLR または D3Hot リセットをサポートする必要があります」とあるため「flr」の場合と「d3d0」の場合をそれぞれ実験。
結果、「d3d0」の時のみ仮想マシン側でもデバイスを認識してくれた。

ということで、/etc/vmware/passthru.mapの最終行に「1077 2031 d3d0 default」という記載を追加した。

なお、 passthru.map の修正を行った後は、ESXiを再起動する必要がある。

# cd /etc/vmware/passthru.map
# passthrough attributes for devices
# file format: vendor-id device-id resetMethod fptShareable
# vendor/device id: xxxx (in hex) (ffff can be used for wildchar match)
# reset methods: flr, d3d0, link, bridge, default
# fptShareable: true/default, false

# Intel 82579LM Gig NIC can be reset with d3d0
8086  1502  d3d0     default
# Intel 82598 10Gig cards can be reset with d3d0
8086  10b6  d3d0     default
8086  10c6  d3d0     default
8086  10c7  d3d0     default
8086  10c8  d3d0     default
8086  10dd  d3d0     default
# Broadcom 57710/57711/57712 10Gig cards are not shareable
14e4  164e  default  false
14e4  164f  default  false
14e4  1650  default  false
14e4  1662  link     false
# Qlogic 8Gb FC card can not be shared
1077  2532  default  false
# QLogic QL45604 cards need to be reset with "link" and cannot be shared
1077  1634  link     false
1077  1629  link     false
1077  1636  link     false
1077  1656  link     false
1077  1644  link     false
1077  1654  link     false
# LSILogic 1068 based SAS controllers
1000  0056  d3d0     default    
1000  0058  d3d0     default
# NVIDIA
10de  ffff  bridge   false
# for QLE2662
1077  2031  d3d0     default
#

fail2banで全JAILのステータスを確認したい

Linuxサーバでfail2banを使ってアクセス拒否設定を行っている。

JAILを複数している場合に、全部を一括で確認する手段が標準ではない模様。
調べたところ「kamermans/fail2ban-allstatus.sh」の下記コメントを発見

joergludwig commented on 20 Dec 2017
Shorter version:
fail2ban-client status | sed -n ‘s/,//g;s/.*Jail list://p’ | xargs -n1 fail2ban-client status

これを ~/.bashrc に対して下記のように追加し、「fail2ban-check」で確認出来るように設定した。

alias fail2ban-check="fail2ban-client status | sed -n 's/,//g;s/.*Jail list://p' | xargs -n1 fail2ban-client status"