Office 365 E5のPSTN通話サービスで取得できる電話番号に日本が追加されている。ただし、現状ではベータ版かつ取得できるのはユーザー用ではなくサービス用と、利用範囲は限られているが、日本国内においてもPBXレス企業向け電話環境の現実味を帯びてきたと言えるだろう。ちなみに、現在はフリーダイヤルと東京のみ選択可能なようで、当方の環境では03-4510-xxxxが取得できた。
Office 365 E5のPSTN通話サービスで取得できる電話番号に日本が追加されている。ただし、現状ではベータ版かつ取得できるのはユーザー用ではなくサービス用と、利用範囲は限られているが、日本国内においてもPBXレス企業向け電話環境の現実味を帯びてきたと言えるだろう。ちなみに、現在はフリーダイヤルと東京のみ選択可能なようで、当方の環境では03-4510-xxxxが取得できた。
Office 365の評価用アカウントを作成する過程で、確認コードの入力が完了するとO365管理ポータルに自動ログオンし、テナント作成時のアカウントに評価用のライセンスが付与されるのが通常の流れだが、確認コード入力後に次のようなメッセージが表示され、テナントは作成されるが評価用ライセンスが付与されない状態になることがある。
「申し訳ございません、追加情報が必要です。お客様の ID を確認するため、追加情報が必要です。Office 365 サポートにお問い合わせください」
このような場合の対処方法は次の通り。
ここまでのステップでテナントに評価ライセンスが付与されるので、あとは任意のユーザーにライセンスを割り当てることができるようになる
最終ステップ実行時に「The verification checks on your payment method have failed. Please select another payment method and try again. 問題が解決しない場合は、お問い合わせを送信してください。」と表示される場合は、少し時間を空けてから再度実行するか、O365テナントで [課金情報]-[サービスを購入する] で試用したいサービスの [無料使用の開始] を実行してみる。
Office 365 でカスタムドメインを登録する際には、ドメインの所有権確認に自社で管理している公開DNSサーバー上にOffice365で提示された確認用レコードを登録する必要がある。
GUIでも設定が可能だが、提示された文字列のコピペ時にスペースが入ってしまったりとか、作業環境によっては面倒となる。
PowerShellでもカスタムドメインの登録ができるので、繰り返し作業をする場合にはスクリプト化しておくと便利だ。
■O365への接続 PS C:\> $user = "<O365管理者ID>" PS C:\> $password = ConvertTo-SecureString -String '<O365管理者パスワード>' PS C:\> $cred = New-Object -TypeName System.Management.Automation.PSCredential -argumentlist $user,$password PS C:\> Connect-MsolService -Credential $Cred ■新規ドメインの登録 PS C:\> New-MsolDomain -Name <カスタムドメイン名> Name Status Authentication ---- ------ -------------- <カスタムドメイン名> Unverified Managed ■確認用DNSレコードの表示 PS C:\> Get-MsolDomainVerificationDns -DomainName <カスタムドメイン名> CanonicalName : ps.microsoftonline.com ExtensionData : System.Runtime.Serialization.ExtensionDataObject Capability : None IsOptional : Label : ms63496511.<カスタムドメイン名> ObjectId : xxxxxxxx-xxxx-xxxx-xxxx-13d12093c912 Ttl : 3600 ■DNSレコードの登録(公開DNSサーバー上で実行) PS C:\> Add-DnsServerResourceRecord -Txt -ZoneName <カスタムドメイン名> -Name "@" -DescriptiveText "MS=ms63496511" ※登録するTXTレコードは、表示された文字列の先頭に MS= を追加する ※当然ながら、確認レコードの表示結果の文字列整形を行うことで、 より自動化のレベルを上げることは可能 ■ドメインの正当性確認 PS C:\> Confirm-MsolDomain -DomainName <カスタムドメイン名> Availability AvailabilityDetails EmailVerifiedInformation ------------ ------------------- ------------------------ AvailableImmediately The domain has been successfu... ■カスタムドメインの登録状況の確認 PS C:\> Get-MsolDomain -DomainName <カスタムドメイン名> Name Status Authentication ---- ------ -------------- <カスタムドメイン名> Verified Managed 出典:https://technet.microsoft.com/en-us/library/dn705744.aspx
Office 365オンラインユーザーを削除すると、30日間は「削除済ユーザー」というフラグがセットされ保持されている状態であるため、削除済ユーザーと同じユーザー名で新たにユーザーを作成することができない。
評価環境などでユーザーを再作成する場合は、削除済ユーザーを強制的に削除する必要がある場合は次のコマンドを実行する。
Get-MsolUser -ReturnDeletedUsers | Remove-MsolUser -RemoveFromRecycleBin –Force
Skype for Businessハイブリッド環境でオンプレミス ユーザーをクラウドに移動するには、事前にSkype for Business Onlineまたは同等のライセンスを、移動対象のユーザーに割り当てておく必要がある。同様にクラウドからオンプレミス環境にユーザーを移動させる場合も、ライセンスを割り当てておかないと操作が失敗する。
ライセンスが無い時に表示されるエラーメッセージも表示が変わっているらしく、表示された内容だけでは理解ができないので注意が必要だ。
以前のエラーメッセージは次の通り。
PS C:\> Move-CsUser -Identity holly* -Target sipfed.online.lync.com -Credential $cred -Confirm:$false
Move-CsUser : HostedMigration fault: Error=(507), Description=(User must has an assigned license to use Skype for Business Online.)
At Line:1 char:1
+ Move-CsUser -Identity holly* -Target sipfed.online.lync.com -Credential $cred
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (CN=Holly Holt,OU=RTC,DC=contoso,DC=local:OCSADUser) [Move-CsUser]、Ind
exOutOfRangeException
+ FullyQualifiedErrorId : MoveError,Microsoft.Rtc.Management.AD.Cmdlets.MoveOcsUserCmdlet
最近のエラーメッセージは次の通り。
PS C:\> Move-CsUser -Identity holly* -Target sipfed.online.lync.com -Credential $cred -Confirm:$false
Move-CsUser : インデックスが配列の境界外です。
発生場所 行:1 文字:1
+ Move-CsUser -Identity holly* -Target sipfed.online.lync.com -Credential $cred
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (CN=Holly Holt,OU=RTC,DC=contoso,DC=local:OCSADUser) [Move-CsUser]、Ind
exOutOfRangeException
+ FullyQualifiedErrorId : MoveError,Microsoft.Rtc.Management.AD.Cmdlets.MoveOcsUserCmdlet
ちなみに、ライセンス割り当てを行ってもすぐに反映されないため、しばらくの間は次のようなエラーメッセージが表示される。
PS C:\>Move-CsUser -Identity holly* -Target sipfed.online.lync.com -Credential $cred -Confirm:$false
Move-CsUser : このユーザー移動の要求時にサーバーのタイムアウトが発生しました。Get-CSUser を使用してユーザーの状態を確認 してください。ユーザーが対象の展開先に移動されていない場合は、数分待ってからやり直してください。引き続きこのエラーが発 生する場合は、Microsoft サポートにお問い合わせください。ユーザーが既に対象の展開先に移動されている場合は、このエラーは 無視してもかまいません。
発生場所 行:1 文字:1
+ Move-CsUser -Identity holly* -Target sipfed.online.lync.com -Credential $cred
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (CN=Holly Holt,OU=RTC,DC=contoso,DC=local:OCSADUser) [Move-CsUser]、Mov
eUserException
+ FullyQualifiedErrorId : MoveError,Microsoft.Rtc.Management.AD.Cmdlets.MoveOcsUserCmdlet
エッジサーバーは外部通信用と内部通信用の2つのNICが必要になる。
エッジサーバーに限らずマルチホーミング環境では内部の名前解決はHostsファイル、外部の名前解決は外部DNSを参照するように設定するのが一般的だが、エッジサーバーに関しては外部のフェデレーション先アドレスを解決する際にトポロジビルダー上で定義された外部IPアドレスがセットされているNICのDNS参照が必須らしい。
検証環境など手を抜きたいときは外部DNSではなく内部DNSを参照して、内部DNSでルートヒント/フォワーダーが設定されていれば外部の名前解決もできるのだが、エッジサーバーでこのような構成を行うと、外部から内部へのフェデレーション通信は成功するが、内部のユーザーを起点とするフェデレーション通信は失敗してしまう。Skype for Business Onlineとのハイブリッド構成時や、Exchange Online UMを使う場合もフェデレーション通信が行われるためUMアクセスが失敗してしまうので注意が必要だ。
このような内部からの片方方向フェデレーション通信となってしまった場合のクライアントログは次の通り。
RequestUri: sip:bob@onprem.biz
From: sip:john@onprem.biz;tag=5c17c53c41
To: sip:bob@onprem.biz;tag=A5F85B8FC6D035D6C374D40DC023DD3B
Call-ID: 78511d7b701c4ac195d5a5b9a3753698
Content-type: application/sdp;call-type=im
v=0
o=- 0 0 IN IP4 192.168.1.1
s=session
c=IN IP4 192.168.1.1
t=0 0
m=message 5060 sip null
a=accept-types:text/plain multipart/alternative image/gif text/rtf text/html application/x-ms-ink application/ms-imdn+xml text/x-msmsgsinvite
Response Data:
504 Server time-out
ms-diagnostics: 1008;reason=”Unable to resolve DNS SRV record”
;domain=”onprem.biz”;dns-srv-result=”NegativeResult”;dns-source=”InternalCache”;source=”sip.onprem.biz”;OriginalPresenceState=”0″;CurrentPresenceState=”0″;MeInsideUser=”No”;ConversationInitiatedBy=”6″;SourceNetwork=”5″;RemotePartyCanDoIM=”Yes”
Polycom CX、VVX シリーズなどデバイス毎にタイムゾーンを設定するのは面倒。
デバイスにもよるが、DHCP から取得したオプションパラメーターでタイムゾーンを自動構成することができる。
Set-DhcpServerv4OptionValue -ComputerName <DHCP_SERVER_NAME> -OptionId 2 -Value 0x00007E90
DHCPオプションID: 2
値の形式: Long 型
JST (GMT+9) なら 、
・3600*9 =32400 >> GMTから32400秒のズレ
・32400を16進数に変換 >> 7E90
・フォーマットに変換すると >> 0x00007E90
Lync/Skype for Business がインストールされているPCに Cisco JabbberをインストールするとOutlookのプレゼンスはJabberからの情報を参照する。
不要になったCisco Jabberを削除してもOutlook プレセンスがおかしくなったまま。アンインストールの過程でほぼすべてのレジストリーを削除するが、次の項目だけは手動で消す必要があるっぽい。
[HKEY_CURRENT_USER\Software\Microsoft\Office\15.0\Common\PersonaMenu]
“EnablePresence”=dword:00000001
このEnablePresenceがあると、メール受信時に、CCフィールドのプレゼンスアイコンだけが表示されないという地味な不具合が発生する。
Active Directory ドメインに参加していない Windows Server を DHCP サーバーとして動かすためにはレジストリの追加が必要。
———————————————————————————————-
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DHCPServer\Parameters]
“DisableRogueDetection”=dword:00000001
———————————————————————————————-
あと、固定IPが設定されていないマシンでは、DHCP OfferやACKを返さないので注意。