利用者:MR G

2009年5月5日 (火) 03:20時点におけるMR G (トーク | 投稿記録)による版 (藤堂さんのリスト)

このページは、こんなページです。

  • 自己紹介だったり
  • メモ帳代わりだったり
  • 新規にページを作る前の「ドラフト版」だったり
  • ToDoリストだったり

意見や要望についてはMR Gの中との会話ペーヂに書き込んでくだサイ。

中の人について

  • 中の人はネットワーク寄りな人らしいです。
  • 外資系PBX(NortelとかCiscoとか)をいぢっているらしいです。
  • FreeBSD使いらしいです。
  • PCの数よりネットワーク機器の方が多いらしいです。
  • アクセスランプの点滅って見入るよネー。データセンターの配線萌え

機器いろいろ

ついカッとなって集めてしまった。トラフィックを増幅できるなら何でも良かった。今では反芻している。

持ってる電話機

  • Cisco電話機いろいろ 8台
  • Snom300(PoE非対応版)
  • Grandstream GXP-2000 2台
  • 三洋電機 IPP-3000
  • WirelessIP5000
  • WI-100HC
  • AAstra 53i
  • Saxa IP NetPhone SX 2台
  • ACT P123S
  • Nortel i2002
  • N900iL
  • N906iL
  • IP-4N-ST101S

機材

VoIPに関連するモノのみ

  • Quintum Tenor BX 816
  • Quintum Tenor AS (型番忘れた)
  • Cisco ISR2801(CME 7)
  • Cisco 1750(CME 3.3)
  • Cisco 1751V(CME 4.0)
  • SIP-GW2(Cisco風味な電話機出してるメーカー)

ミスプリ用紙の裏

雑文。
気分次第で消されたり現われたりしまス。

Qualify

Qualify(生存確認:王大人パケット)はAsteriskのバージョンおよびプロトコル(SIP or IAX)により
設定内容が異なったりする。

SIP

sip.confに書くとOK

qualify=yes
生存確認パケットを投げる
qualify=4000
生存確認パケットを投げ、4000ms(4秒)以上遅れた場合は王大人により、死亡が認定される。
WiFi電話機はこの値を大きめにしておくこと。(5000ms位でも良いかもしれない)
qualify=no
生存確認パケットを投げない。王大人をクビにする。
qualifyfreq=1
生存確認パケットを秒刻みで設定する。王大人が1秒毎に出現する。デフォルト値は60000 ms(60秒)
Asterisk1.6以降で使用可能

IAX

iax.confに書くとOK
内容としてはSIPと大して変わらないものの、古いバージョンから生存パケットの間隔を設定できるので、パケット増幅スキーな人にIAXオススメ

qualify=yes
生存確認パケットを投げる
qualify=4000
生存確認パケットを投げ、4000ms(4秒)以上遅れた場合は死にかけと判断される。(Status:LAGGEDになる)
qualifyfreqok=400
生存確認パケットをミリ秒刻みで設定する。1に設定すると、アクセスランプが素敵な状態になる。
qualifyfreqnotok=3
生存確認パケットを投げ、3ms(3ミリ秒)以上遅れた場合は王大人により、死亡が認定される。

QuntumのプライベートMIB

ネットワーク監視のお供、プライベートMIB(&OID)色々しりぃず
RRDToolで値をとると面白そうな予感のする値を重点的に調査。

スロット及びポート番号
1.3.6.1.4.1.6618.3.5.1.2(stDescr)
回線の種類
1.3.6.1.4.1.6618.3.5.1.3 (stType)
L1(物理層)のステイタス
1.3.6.1.4.1.6618.3.5.1.4 (statusLayer1)
L2(データリンク層)のステイタス(CAS不可)
1.3.6.1.4.1.6618.3.5.1.5 (statusLayer2)
T1やE1回線フレーム(L2層データ)のエラー回数 
1.3.6.1.4.1.6618.3.5.1.6 (framingErrors)
フレーム同期ビットCRCエラー
1.3.6.1.4.1.6618.3.5.1.7 (pathCodeViolations)
物理インターフェースの伝送符号違反カウンター(BPV;極性違反)
1.3.6.1.4.1.6618.3.5.1.8 (lineCodeViolations)
Dちゃんねろの送信回数(D-Channelのデータ送信カウンター)
1.3.6.1.4.1.6618.3.5.1.10 (dchTxFrames)
Dちゃんぬるの送信量(D-Channelのデータ送信量)
1.3.6.1.4.1.6618.3.5.1.11 (dchTxOctets)
Dちゃんねるのデータ転送失敗回数
1.3.6.1.4.1.6618.3.5.1.12 (dchTxFrameUnderruns)
Dちゃんねるの受信回数(DCHのデータ受信カウンター)
1.3.6.1.4.1.6618.3.5.1.13 (dchRxFrames)
Dちゃんねるの受信量(D-Channelのデータ受信量)
1.3.6.1.4.1.6618.3.5.1.14(dchRxOctets)

発着呼の集計

OID 1.3.6.1.4.1.6618.3.4以下の値には、下記のデータが収められている。

  • 通し番号
  • スロット番号、デバイス番号およびデジタルインターフェースの番号
  • 回線の種類
  • 発着信回数
  • 発着信→通話回数
  • 発着信して、通話に至った回数の割合(通話成功率のようなもの)


snmpwalkの結果

こんな感じで発着信記録のOIDがあるわけで。
(手抜き)

Halphas# snmpwalk -On -m all -c public -v 1 10.0.5.7 .1.3.6.1.4.1.6618.3.4
.1.3.6.1.4.1.6618.3.4.1.1.1 = INTEGER: 1
.1.3.6.1.4.1.6618.3.4.1.1.2 = INTEGER: 2
.1.3.6.1.4.1.6618.3.4.1.1.3 = INTEGER: 3
.1.3.6.1.4.1.6618.3.4.1.1.4 = INTEGER: 4
.1.3.6.1.4.1.6618.3.4.1.1.5 = INTEGER: 5
.1.3.6.1.4.1.6618.3.4.1.1.6 = INTEGER: 6
.1.3.6.1.4.1.6618.3.4.1.1.7 = INTEGER: 7
.1.3.6.1.4.1.6618.3.4.1.1.8 = INTEGER: 8
.1.3.6.1.4.1.6618.3.4.1.1.999 = INTEGER: 999
.1.3.6.1.4.1.6618.3.4.1.2.1 = STRING: "SL2/DI1"
.1.3.6.1.4.1.6618.3.4.1.2.2 = STRING: "SL2/DI2"
.1.3.6.1.4.1.6618.3.4.1.2.3 = STRING: "SL2/DI3"
.1.3.6.1.4.1.6618.3.4.1.2.4 = STRING: "SL2/DI4"
.1.3.6.1.4.1.6618.3.4.1.2.5 = STRING: "SL2/DI5"
.1.3.6.1.4.1.6618.3.4.1.2.6 = STRING: "SL2/DI6"
.1.3.6.1.4.1.6618.3.4.1.2.7 = STRING: "SL2/DI7"
.1.3.6.1.4.1.6618.3.4.1.2.8 = STRING: "SL2/DI8"
.1.3.6.1.4.1.6618.3.4.1.2.999 = STRING: "Totals:"
.1.3.6.1.4.1.6618.3.4.1.3.1 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.2 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.3 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.4 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.5 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.6 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.7 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.8 = STRING: "BRI"
.1.3.6.1.4.1.6618.3.4.1.3.999 = STRING: " "
.1.3.6.1.4.1.6618.3.4.1.4.1 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.2 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.3 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.4 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.5 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.6 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.7 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.8 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.4.999 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.1 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.2 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.3 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.4 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.5 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.6 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.7 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.8 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.5.999 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.6.1 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.2 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.3 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.4 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.5 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.6 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.7 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.8 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.6.999 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.7.1 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.2 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.3 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.4 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.5 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.6 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.7 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.8 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.7.999 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.1 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.2 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.3 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.4 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.5 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.6 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.7 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.8 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.8.999 = Counter32: 0
.1.3.6.1.4.1.6618.3.4.1.9.1 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.2 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.3 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.4 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.5 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.6 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.7 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.8 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.9.999 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.1 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.2 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.3 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.4 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.5 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.6 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.7 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.8 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.10.999 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.1 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.2 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.3 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.4 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.5 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.6 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.7 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.8 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.11.999 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.1 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.2 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.3 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.4 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.5 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.6 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.7 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.8 = Gauge32: 0
.1.3.6.1.4.1.6618.3.4.1.12.999 = Gauge32: 0

TenorとCiscoをISDNで直接接続してみる

Tenorを親側として設定し、Ciscoを子側として設定してみる試み
L2レベルまで確認。

Tenor BX側の設定

ISDNSignalingGroupでは、TEIを0に設定する

ISDNSignalingGroupの設定
  id                           : 1
  ORientation                  : 1                   Network
  PROTocol                     : 21                  BRI_NTT
  L2Estab                      : 1                   Always;default
  EtsiDiscNoInBand             : 0                   All in one message
  TEI                          : 1                   endpoint id,

ステータスを見る場合は下記の通りの操作を実行する。

Quintum-ChannelGroup-SL2DV1DI1# di 1
Quintum-DigitalInterface-SL2DV1DI1# st

Physical Layer (L1):             :  Active
DataLink Layer (L2):             :  Active

Transmitted Frames               :  730
Transmitted Octets               :  2915
Receieved Frames                 :  141
Receieved Octets                 :  574
Received Frame Length Violations :  0
Received Aborted Frames          :  0
Received Frame w/CRC Errors      :  2
Transmit Underruns               :  0
Cisco側の設定

Cisco側でTEIの値を手動設定させる必要があり、Tenor側のTEIが0に設定されている場合は、
0以外の値を設定しておくこと。

ISR-2801#show running-config

(略)

interface BRI0/0/0
no ip address
isdn switch-type ntt
isdn point-to-point-setup
isdn static-tei 1

ステータスを見る場合は下記の通りの操作を実行する。

ISR-2801#show isdn status
Global ISDN Switchtype = ntt
ISDN BRI0/0/0 interface
       dsl 0, interface ISDN Switchtype = ntt
   Layer 1 Status:
       ACTIVE
   Layer 2 Status:
        TEI = 1, Ces = 1, SAPI = 0, State = MULTIPLE_FRAME_ESTABLISHED
    Layer 3 Status:
        0 Active Layer 3 Call(s)
    Active dsl 0 CCBs = 0
    The Free Channel Mask:  0x80000003

本日のがくしゅう

NAT

sip.confで使えるnat設定

  • nat=never
  • nat=yes
  • nat=route
genkd

genkdでチョンボって別の個所を指定しちゃったらgrub.conf弄るとOKらしい
コマンドやり直しでも直らないっぽい

声優さん

voip-info.jpで配布している日本語音声は竹田えり さんなのはよく聞くが、他の声優さんに頼んだ場合は、いくらかかるのだろうか
という訳で、ぐーぐる先生に聞いてみた。

Asteriskに投資するぜ!イエア!!!という意味で、竹田えりさんバージョン以外に、日本語音声ファイルを作ってみるのも悪くないかもしれないですな!

STARS SYSTEM Ltd.
「電話用音声メッセージをAsterisk等で即利用可能な形式で録音いたします。」らしい。
で、いくらなんだろう。
音響・声優事務所 Sham.Studio.
1日/8時間 \100,000~ らしい。
はてな
Q.声優さんの相場を教えてください。 A.相場はありません。
AtelierPeach-FAQ-
5万円くらいか? 判りやすい。
ネット声優(wikipedia)
その存在を初めて知ってしまった。
個人ベースで依頼するなら、こっちかな(´-`)

余談

  1. 某コールセンターでは、声に定評のある社内オペレータさんにIVRの音声を吹き込んでもらっていたそうな。
  2. 外資系では、有名どころの声優さんに吹き込んでもらったそうな。
  3. 音声カスタマイズの際、(数年経過しても)同じ人に声を吹き込んでもらえるかどうか。が難点らしい。

ToS

CCNA勉強の気まぐれに「だだだだ」とAsteriskのToS周りの記事を翻訳してみたものの、
パラメータが示す記号が謎。オマジナイ。
オマジナイパラメータに限って、イザというときにトラップになったり解決策になったりするので油断大敵。
気になるパラメータをぐぐったら「一般的なペーストビン」だったり、はてブなのはお約束。運命
Asterisk関連で重要なスキルは以下のとおり

  • 英語読め
  • パケット読め
  • ソース読め
  • 方言読め (英語/日本語/機械翻訳)

VoIPでよく聞くようなVLANやQoSというのは、
「有ったら有ったで非常に便利。でも無くても大丈夫なケースは多い」
極端な話、必須ではないが重要な技術といったところっすかね。

OSCネタ

OSC2009で大館市のブースにいってみる
今まで疑問に思っていた「よくもまぁ、あの電話機を使って苦情が出ないもんだな~」という疑問が解け、実りある一日でございますた。
劇的なコスト削減の面ばかり着目されるものの、個人的には下記の点に注目した。

  • ラインキー問題を、あっさりクリアーできていた(むしろラインキーすら必要なかった)
  • 大規模メーカーが謳うような"稼働率99.999%"を求めている訳では無い(コストとの兼ね合い)
  • 小回りが効く規模なのが幸いした(東京都レベルではちょっとキツイかも)
  • 電話機のカールコードの作りが悪かったそうな(雑音が入っていたetc)
  • やっぱり電話機関係で苦情があったそうな(ファームウェア改善してもらって回避したそうな)

N906iL

小川町のケータイショップで買ってきた。
2,3個ほど在庫あるっぽい。

sip.confのpermit/deny

IPアドレスによるACLが組めるっぽいので試してみた。

書いてみる

こんな感じでsip.confに書いてみた

[503]
; Snom300
type=friend
fromdomain=dynamic
username=503
secret=**************
host=dynamic
canreinvite=yes
language=jp
qualify=3000
insecure=very
deny=0.0.0.0/0
permit=10.0.5.0/255.255.255.192
permit=192.168.0.0/24

確認

ACLで接続制限ができたかどうかを確認してみた。
許可されてないIPアドレス帯からregisterしようとすると、下記のような結果になった。

[Jan 25 20:06:13] NOTICE[1904]: chan_sip.c:15236 handle_request_register: Registration from '"503" <sip:503@Asterisk>' failed for '192.168.5.57' - Device does not match ACL

書き方のコツ

まずはALL Denyで全部不許可にした上で、接続を許可するIPアドレス帯をpermitで指定するのが良さげな感じ
下記のような書き方が宜しい

deny=0.0.0.0/0
permit=10.0.5.0/255.255.255.192
permit=192.168.0.0/24

VLAN

CiscoやSnomなど、VLAN対応電話機は、内部でTAG VLAN機能つきSW-HUBの機能を持っているらしく、
イメージとしては3ポートVLAN Switching HUBになる。
ぶら下がって居るPCが、Winnyを動かしていても、(L2ベースで)セキュリティ的に大丈夫。という理屈になる。
実際にタグありVLAN組んでみないと確信取れないっすね(・ω・)

QoS

QoSを勉強していると、どうも「QoSは一点豪華主義ではダメ」ということらしく、
音声データが電話機に入り、ネットワークを越えて再び電話機から出て行くところまでの流れが重要だそうな

  • Asteriskそのもの
  • サーバーおよびNICでのQoS
  • LAN-Switch
  • Router
  • ISP (VoIPサービスしているISPとかはQoS設定しているかもしれない)

saxa電話機あそび

  • SaxaのIP NetPhone SXはごく一般的なAsteriskにレジストし、発信まですることができる。
  • ただし、ラインキーのハッキングについては、AsteriskおよびxCubeをいぢれる技術と、KIAIが必要だと思われる。
    SIPへの理解も必要。
  • saxaのIP電話のコンフィグはFTPクライアントを使って電話機に押し込むことができる。
  • 「ローカル保守」となっている時にFTPの口が「くぱあ」と開くのでFTPクライアントでログインする。
  • configの仕様は例によって非公開(ぐぐっても全然見付からない)
  • 何だかんだで、パケット読んでみないと判らん。というオチになる予感

IPアドレスとか

bip_sys.ini開くと出てくる項目。名前からしてモロ判り。 DHCP_Use=1にすると、DHCPが有効になるっぽ

[TCP_IP]
DHCP_Use=1
IpAddress=192.168.1.56
NetMask=255.255.255.0
DefGwAddress=192.168.1.1
DNS_Use=0
DNSAddress1=0.0.0.0
DNSAddress2=0.0.0.0

VLANとか

bip_sys.ini開くと出てくる項目。名前からしてモロ判り。という訳には行かないっぽい

[Network]
NWPort=0
PCPort=0
TOS=A0
GratuitousARP=2
VLAN=0
VLANID=1
VLANPRI=7
VLANIDDAT=2
VLANPRIDAT=0
VLANMODE=1

NTPとか

NTPスキーな人は、NICTとかMfeedの(NTPサーバーの)IPアドレスを丸暗記していても不思議ではない。
PeerTimerの単位は、多分1H(1時間)
DHCPサーバーからNTPサーバーアドレスを拾ってくるかもしれない(いつのまにか入っていた)

[NTP]
NTP_Use=1
NTPSrv1=192.168.0.254
NTPSrv2=
TimeOffset=9
PeerTimer=24
ClientMode=1

playtones遊び

テンポ120で四分音符の箔を打つ場合、60000ms(1分)の中で120回リズムを刻むわけで
60000/120=500となる

テンポ120で8分音符の箔を打つ場合は、箔がその倍なので(240個のリズム)
60000/240=250となる
簡単な曲をPlaytonesで演奏する場合は、このような形で書くことになる。

exten => _5,1,Answer
exten => _5,n,Wait(1)
exten => _5,n,Playtones(!293/1000,!440/1000,!391/500,!349/500,!329/500,!261/500,!293/1000,
!523/500,!391/250,!440/250,!349/500,!391/250,!349/250,!329/500,!261/500,!293/8000)
exten => _5,n,Wait(16)
exten => _5,n,StopPlaytones
exten => _5,n,Busy(5)
exten => _5,n,Hangup

実際に書くとしたら、旋律しかない曲(FFの最初の曲とか)に絞って書いてみるとか、
複数の内線(exten複数)に分けて書くとか、そのあたり。
Wait( )でタイミングの同期を取るのは難しいと思われる訳で。

Cisco IP電話機ネタ

Cisco電話機の導入は、Skinnyファームウェア/SIPファームウェアのいずれかを選択しても獣道に突入する可能性が高い。
特にAsteriskにぶら下げる場合は、険しい獣道が待っている。
考えられる原因としては下記の通り。

  1. 使う人が少ない(電話機そのもののエンドユーザー数はそれなりに多いらしいが・・・)
  2. 敷居が高い(DHCPサーバー設定、TFTPサーバー設定、チャネルドライバ、必要なハードウェアetc)
  3. 日本語の情報が少ない
  4. 高い(価格が)

Cisco電話機を入れる前に、導入実績のあるところ(or 導入した人)に相談するのが一番っすね。

壁紙設定

SIPファームウェア設定で活きて来るっぽい「壁紙設定の有無」
SCCP電話機にて設定したものの、反応なし。

<commonProfile>
<phonePassword></phonePassword>
<backgroundImageAccess>true</backgroundImageAccess>
<callLogBlfEnabled>2</callLogBlfEnabled>
</commonProfile>

WirelessIP 5000

ファームウェアがhttp://www.wirelessip-support.com/software.php にあるらしいが、要登録とのこと。
電話機用電池パックが無償交換の対象になっている。
http://www.wirelessip-phone.com/information/200708w.html

8時間でバッテリー切れになる件

例え充電中であっても、8時間で電源OFFになる場合がある。(表示上はバッテリー切れ)
クレイドルに正しく刺さっている場合でも再現する。 ←半挿しが多々ある。
省電源を切ってしまうと、症状が改善される模様

Tenorネタ

Quintum社製 Tenorに関連するメモ&ドラフト
ファームウェアP106系列のコマンドラインリファレンスを読めば、なんとかなる予感。


IPRoutingGroup

VADEnable

VAD(Voice Activity Detection)の設定。
無通話時(音が出てない時)は、パケットを送らないようにする。
VADを有効にしていると、使用帯域を最大で35%ほどケチることが出来るが、通話トラブルの原因になり易い。

set vade 1
VADを有効にする。(デフォルト)
set vade 0
VADを無効にする。
元ネタ

VADEnable

ダイヤルプラン

ダイヤルの設定に関するもの色々 DialPlan-1 (dp 1) Prompt Commands

MAXDNlength

Tenorがダイヤルを受け付ける、最大桁数を設定する。
最大30桁まで設定可能だが、MINDNlengthで設定した最小桁数を下回ることは出来ない。

config-DialPlan-1* set maxdn 25
最大で25桁までのダイヤルを受け付ける
config-DialPlan-1* set maxdn 2
最大で2桁までのダイヤルを受け付ける
元ネタ

MAXDNlength

MINDNlength

Tenorがダイヤルを受け付ける、最小桁数を設定する。
最小1桁まで設定可能だが、MAXDNlengthで設定した桁数を上回ることは出来ない。(同じケタ数はOK)

config-DialPlan-1* set mindn 3
最低で3桁からのダイヤルを受け付ける
config-DialPlan-1* set mindn 15
最低で15桁からのダイヤルを受け付ける
元ネタ

MINDNlength


OutgoingIPRouting(OIPR)

TenorはH.323とSIPに対応しているが、デフォルトではH.323だけ喋る設定になっている。
SIP対応機器と通信する場合は、この値を変更する必要がある。

set oipr 0
H.323のみ使用する(デフォルト値)
set oipr 1
SIPのみ使用する。
設定内容を見てみる

GateWay-1グループの中にあるので確認

config-GateWay-1# gw 1
config-GateWay-1# sh

GateWay-1 :
  Description                  : Tenor BX Gateway    product name, max 31
  OutgoingIPRouting            : 1                   SIP only
(以下略)
元ネタ

OutgoingIPRouting

ISDN設定

Line Circuit Routing Group

Line Circuit Routing Group(LCRG)の設定グループでは、TenorとPBX(のISDNポート)を接続するための設定を行う。
ISDN回線とTenorを接続する場合は、(LCRGではなく)Trunk Circuit Routing Group(TCRG)の方を利用する。
TCRGをChannel Gropに紐付けることで、設定値が有効になる。

元ネタ

LineCircuitRoutingGroup Prompt Commands (config lcrg#)

TrunkCircuitRoutingGroup

Trunk Circuit Routing Group(TCRG)の設定グループでは、TenorとPSTN回線(ISDN回線)を接続するための設定を行う。
TCRGの方が柔軟性が高くなっており、主にPass-Throughのような機能を利用する場合に、TCRGのほうを利用する方が好ましい。

元ネタ

[http://quintum.com/support/products/2G/tenor_2G/sysdoc/webhelp106/trunkcircuitroutinggrouppromp.htm TrunkCircuitRoutingGroup Prompt Commands (config tcrg#)]

SIP設定

SIPに関係する設定はSIPSignalingGroupというグループで管理されており、
そのグループにSIPパケットの投げ先などを設定する。 SIPSignalingGroup(SIPSGでもOK)

PrimarySIPServer

IP経由で電話する相手先(SIPパケットの投げ先)を設定する。
王大人は5秒間隔で仕事をしている。仕事振りは下記の通り

  1. INVITEパケットを投げる(あて先は、PrimarySIPServerに書いてあるホスト)
  2. 5秒待つ
  3. 最大で5回までInviteパケットを投げる。それでも反応が無い場合はPrimarySIPServer死亡確認(王大人的に)。
  4. Secondary Serverが代わりに選択される。
  5. PrimarySIPServerが息を吹き返した時に備え、SIPパケット(OPTIONS)を定期的に投げる。(定期的に「生きてるか」パケットを投げる)
  6. PrimarySIPServerが息を吹き返しても、Secondary Serverが死亡確認されるまで、Secondary Serverを使いつづける。
    (PrimarySIPServerを使わない)
  7. Secondary Server死亡確認方法についても、PrimarySIPServerと同様。

MasterChassis

システム全体に影響を与えるような、大まかな設定のグループがMasterChassisグループの中で定義されている。

  • クロックの設定
  • SNMP周りの設定
  • IVRの設定
  • CDR(課金情報)の設定
  • NMSサーバーの設定
  • RADIUSサーバーの設定
  • DNSサーバーのIPアドレス設定
  • 他いろいろ

PrimaryClockSource

他の機器とクロックの同期を取るための設定。下記の二つの選択肢がある。

  • Digital Line(デジタル回線)
  • Internal(内部)

T1回線やISDN回線などのPSTN回線に繋いでいる場合は、回線側にクロックを合わせるようにする。
逆に、内部機器にクロックを提供する場合は、Internalの設定となる。

set primaryclocksource 0 (pcs 0でもOK)
内部機器にクロックを提供する
set primaryclocksource 1 (pcs 1でもOK)
PSTN回線側にクロックを合わせる

TenorとSNMP

SNMP周りで設定できそうなモノ一覧

 SNMPSysLocation              : (Not Set)           location info for SN
 SNMPSysContact               : (Not Set)           contact info for SNM
 SNMPSysDescription           : (Not Set)           SNMP Description
 SNMPSysName                  : (Not Set)           System name for SNMP
 SNMPTrapIP1                  : (Not Set)           SNMP Trap IP addr 1
 SNMPTrapIP2                  : (Not Set)           SNMP Trap IP addr 2
 SNMPTrapIP3                  : (Not Set)           SNMP Trap IP addr 3
 SNMPPublicCommunity          : public              id information
 SNMPTrapCommunity            : trap community      id information

SNMPSysLocation

(SNMPを利用した事があるなら)そのまんま、「SNMP機器の場所」を記述する。
拠点名や場所(フロア名など)を記述しておき、SNMPマネージャ側から判りやすくする。

config-MasterChassis-1# set snmpsl "YOKOHAMA TenorBX816"
元ネタ

http://quintum.com/support/products/2G/tenor_2G/sysdoc/webhelp106/snmpsyslocation.htm

SNMPSysContact

「SNMP機器の管理担当の連絡先」を記述する。
部署名や連絡先を記述しておき、SNMPマネージャ側から判りやすくする。

config-MasterChassis-1# set SNMPSysContact "Meganekko Ski"
元ネタ

http://quintum.com/support/products/2G/tenor_2G/sysdoc/webhelp106/snmpsyscontact.htm


SNMPPublicCommunity

SNMPにアクセスするためのコミュニティ名を設定する。
Tenorに対し、SNMPマネージャがアクセスするための「パスワードのようなモノ」となる。
初期値が入っていないため、設定を入れるまでは、SNMPによるアクセスが出来ない。

config-MasterChassis-1# set snmppc "OhhhhYEAHH"
元ネタ

http://quintum.com/support/products/2G/tenor_2G/sysdoc/webhelp106/snmppubliccommunity.htm


警子ちゃんIIを泣かしてみたい。とか
MRTGで、なんかいぢれないかな~と思ったり思わなかったり。

snmpwalkコピペ

実運用してみないと、何が役に立つのか全然わかりませんぜ。旦那

Melchior# snmpwalk -m all -c public -v 1 10.0.8.2 .1.3.6.1.4.1.6618
enterprises.quintum.quintumSysDesc.hardwareType.0 = "Tenor Multipath Switch"
enterprises.quintum.quintumSysDesc.slotCount.0 = 2
enterprises.quintum.quintumSysDesc.deviceTable.deviceEntry.deviceIndex.0 = 1
enterprises.quintum.quintumSysDesc.deviceTable.deviceEntry.deviceNumber.0 = 5
enterprises.quintum.quintumSysDesc.deviceTable.deviceEntry.cardType.0 = "cardType:[Tenor BX]"
enterprises.quintum.quintumSysDesc.deviceTable.deviceEntry.cardSerialNumber.0 = "serial#:[A023-000000]"
enterprises.quintum.quintumSysDesc.deviceTable.deviceEntry.cardSWVersion.0 = "swVersions:[BX=P106-12-12][DSP20=P106-12-12][DSP120=N/A][Bootcode=P106-02-00][Database=DB_CMS_M14_A018_V12.0.0_121107]"
enterprises.quintum.quintumSysDesc.deviceTable.deviceEntry.cardHWVersion.0 = "hwVersions:[MainBoard=BX.1][DSP20=2 0 0][DSP120=N/A][BRI=3 3 3 3]"
enterprises.quintum.quintumAlarms.activeAlarm.0 = 8
enterprises.quintum.quintumAlarms.activeSeverity.0 = 1

(多すぎるので略)
発着呼ステイタス

発着信ステイタスを見る場合はcmd callsと打つこと。
コピペしたら横にクソ長いという・・・

#cmd calls

Current system time is FRI MAR 27 01:53:33 2009



-----------------------------------------------------------------------------------------------------------------------------------
Call     Calling          Called           Call       Call  Resource Id / Media GW IP       Remote Signal.  Codec IncRG    OutRG 
Id       Number           Number           Duration   Type  InComing       / OutGoing        Gateway         Type
-----------------------------------------------------------------------------------------------------------------------------------

-----------------------------------------------------------------------------------------------------------------------------------

--------------------------------
Total Calls:      0
--------------------------------
Quintum#
パケットを投げつける先の設定

SIPパケットの投げ先とか(AsteriskのIP)を見る場合はSIPSGでOK
特にPrimarySIPServer重要

Quintum-StaticIPRoute-0# sipsg
Quintum-SIPSignalingGroup-1# show

SIPSignalingGroup-1 :
  SIPInfoFormat                : 0                   Nortel,default
  ProxyFailoverBehavior        : 1                   fail over
  PrimarySIPServerPort         : 5060                portnumber,def 5060
  PrimarySIPServer             : (Not Set)           IP address
  SecondarySIPServerPort       : 5060                port number,def 5060
  SecondarySIPServer           : (Not Set)           IP address

回線カードスロットの設定

電話回線ポートに関する設定。
システム内部でスロット2に電話回線(アナログ、ISDN)モジュールが入っているので、
オマジナイ的にSLot-SL2 (SL SL2でもOK)と入力する。

Quintum# sl sl2
Quintum-SLot-SL2# show

SLot-SL2 :
  name                         : Digital Tenor 8-Port BRI Card
  Type                         : 7                   Read only, Card Type
  SlotNumber                   : 2                   Read only, Slot Numb
  Online[1]                    : 1
  Online[2]                    : 0
  Online[3]                    : 0
  Online[4]                    : 0
  PowerOffBypass[1]            : 0
  PowerOffBypass[2]            : 0
  PowerOffBypass[3]            : 0
  PowerOffBypass[4]            : 0
  PhantomPowerPassthru[1]      : 0
  PhantomPowerPassthru[2]      : 0
  PhantomPowerPassthru[3]      : 0
  PhantomPowerPassthru[4]      : 0

Online[1]

電話回線ポート1と2を開放したり閉塞する。

set o[1] 0
電話回線ポート1と2を閉塞する。(使用不可にする デフォルト値)
set o[1] 1
電話回線ポート1と2を開放する。(使えるようにする)
元ネタ

Online

PowerOffBypass[1]

Tenorの電源が落ちたときに、電話回線ポート1とポート2をバイパスさせる。
停電時に、電話回線ポート1にISDN回線を接続しておき、停電専用の緊急用電話機を活かしたい時に使用する。

通常時(電源が入っている)

ISDN電話機の電源はOFFのままで、通常では使えないようになっている。

停電時(電源が落ちている)

電話回線ポート2にISDN電話機を接続しておくと、Tenor BXの電源が落ちている時に
ISDN電話機の電源が入る。

元ネタ

PowerOffBypass

PhantomPowerPassthru

BRI専用の設定となるので要注意
48Vの電圧をISDN電話機に供給するかどうかを設定する。

元ネタ

PhantomPowerPassthru

システム内部の構成

Tenorはシステム内部に複数のスロットを持っているが、Tenor BXやAS、CMSでは構成が異なる。
Ciscoでのinterface GigabitEthernet0/90にあたる個所となる。

14スロットタイプ
14番目のスロットがCMS Controller Cardとして予約されている
2スロットタイプ
1番目のスロットがシステム制御用として予約されている
8スロットタイプ
1番目のスロットがシステム制御用として予約されている

Tenor BXの場合、スロット1にはシステム制御コントローラーが内部に入っており、
スロット2にBRIコントローラーが入る形となる。

config-MasterChassis-1#  st
---------------------------------------------------------------------
Slot Dev  Status                Configuration
---------------------------------------------------------------------
  01  01  Active            Tenor BX816 System Controller
  02  01  Active            DS1 Card
  02  02  Active            n-Channel DSP Card

Tenorのモード

Quintum Tenorには4つのモードがある。

コンフィグレーションモード
設定変更モード。設定を変更したり新規設定するときのモード
診断モード
ネットワークの監視や診断、トラブルシューティングを行うときのモード
メンテナンスモード
再起動やパスワードの変更など、機器のメンテナンスを行うときのモード
モニターモード
ネットワークの状態や、発着信状況の監視など、機器のモニタリングを行うときのモード
ハイパーモード
俺のこの手が光って唸る。お前を倒せと(以下略)

Astlinuxネタ

Astlinux0.6.2を入れてみた

Astlinux0.4.8ではキーディスク不要だったのが、0.6.2ではキーディスク作成が必須っぽいので、色々頑張ってみた。

キーディスクをCFカード内に作成

genkdと入力するとキーディスクを作るプログラムが動き出す。
予めAstlinux 空き容量有効活用にある手順にて、CFにスライスを作り、マウントできる状態にしてある。
多少のエラーはKIAIとKONJOでカバーすること。

pbx kd # genkd /dev/hda2 ←hda2(CFカードにもう一つスライス切った)をキーディスクにする。
This script will help to create a KeyDrive to store
your AstLinux configuration.  MAKE SURE THAT YOUR DRIVE IS
CONNECTED.

I will use /dev/hda2
USING EXISTING PARTITION.  MAKE SURE THIS IS WHAT YOU
WANT!!!
Please type yes to continue

Is this okay? yes   ←yesと入力する。
You specified an existing partition.  I will attempt to
use it.  Skipping auto-partition...
Filesystem created. Copying existing configuration...
Done.  I STRONGLY URGE YOU TO REBOOT NOW.
Type reboot to cleanly restart now.
pbx / # reboot  ←再起動してみた。

再起動後、シェル上からdf(ディスク容量表示)させてみると、/mnt/kdというディレクトリがマウントされており、
この/mnt/kdディレクトリにファイルが保存されるようになる。(と、思う)

pbx ~ # df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/loop0                3194       944      2055  31% /oldroot
/dev/hda1               130734     38316     92418  29% /oldroot/cdrom
/dev/loop0               35264     35264         0 100% /
none                       200        16       184   8% /dev
none                      5000       116      4884   2% /var
none                     10000       180      9820   2% /tmp
/dev/hda2               846296      4312    798996   1% /mnt/kd  ←この行

他の個所はAstlinux0.4.8とだいたい一緒。クセが強いのも同じ。
/stat/etc/以下は、もういじれないので、その辺りに気をつければOK。

AutoAnswer(Astlinux0.4.8限定)

まずは、extension"300"にはモーニングコールなり、MoHなりの処理を設定しておく。
まずは、テキトーに下記のようなテキストファイルを作成しておく

Forneus tmp # cat outband.txt
Channel: sccp/512/aa1w
Callerid: 511
MaxRetries: 1
RetryTime: 5
WaitTime: 3
Context: default
Extension: 300

次に/var/spool/asterisk/outgoing/ に先ほどのファイルをコピーするとOK

Forneus tmp # cp outband.txt /var/spool/asterisk/outgoing/

cronに、コピー処理を埋め込めば定時発信(モーニングコールなど)することができる。

余りスペースを活用する

Astlinux_空き容量有効活用に引越ししますた。

Astlinuxの小ネタ

IPアドレスについて

IPアドレスを固定で振る際にクラスレスな(/28とか)IPアドレスを振っても、クラスフルな設定に変わっていたりする。
クラスフルなIP以外を振ると、トラブルの元になることが多いっぽいので、避けた方が無難。

起動が超遅い

DNSの正引き逆引きが出来てない可能性大。

BOOTしない

CFカードに孔明の罠が仕込まれていることがあり、ファイルの一部が破損していることがある。
configもろもろのバックアップ(CF丸ごとでも良い)を取っておくこと。
ファイルの一部が破損することがあるので、
md5sumにてファイルの同一性を確認すべし。(ファイルの一部が壊れることもある)
特にTranscend製のカード使ったら頻発した。(4枚中3枚で上記障害が発生)

Remote UNIX connection

CLIコンソールに出てくる、下記のメッセージは一体何者か。不届き者か。

   -- Remote UNIX connection
   -- Remote UNIX connection disconnected

で、さっそく調べてみた。
どうやら、他のユーザー、もしくは監視サービス(nagios他)がCLI接続したときに出るログらしく、原因は下記の通りとなる

  • 他のユーザーがCLIに入ったかもしれない。
  • asterisk manager (manager.conf)がつなげてるかもしれない。
  • Nagios(のプラグイン)が繋げているかもしれない

対応策としては、下記の通り。

  • こいつは無害なんで気にするな
  • vの数を減らせ(asterisk -vvvvvvvvvvvvvvvvvvvvvrのこと)
  • CLIからログオフしてしまえ

AstLinux小ネタ集

Building a compact Asterisk server with AstLinux
Astlinuxの小ネタ多数。但し英語

  • コンパイル済みのAstlinuxをインストールする
  • crontabを設定する
  • 10Base-Tでリンクさせる
  • 俺様ば~ぢょんのAstlinuxを創る

藤堂さんのリスト

ToDoリストが増える一方という現状を真摯に受け止め、また一日も早くvoip-infoのネタ記事を充実させる事がデキルよう努める必要があると捉えており、これらのリストを可及的速やかに終了させることができるよう、各方面へ働きかけ有用なページを作成すべく対応を協議すると同時に、前向きな検討を重ね、然るべき時期に粛々と最近更新したページにネタ記事をage進行することができれば幸いと考える次第でございます。

ギンギンに頑張ってます

Quintum Tenor BX816いぢりシリーズ ~INS対応機器を接続~
TenorからAsteriskへの発信ができたので、次は着信設定を入れてみる。

そこそこ頑張ってます

優先順位高めのもの。

Catalyst6506いぢり
eBGP/OSPFにてLAN内の主要機器と接続し、温度をMRTGで測れるようになるまで。
CP-7961Gファームウェア バージョンダウン
8.4.X→8.3.Xにファームウェアバージョンダウンはできるのか否か。
CMEによる簡易電話網構築
ITSPに直接レジストさせてみる計画(ACLもあるヨ!!)
Quintum Tenor BX816いぢり
CMEとSIPでおしゃべりさせたいよネ。INS回線が無くても遊べるらしい。
Quintum Tenor BX816いぢりシリーズ ~SNMP設定~
SNMPネタを作成するヨ!!(Thanks to 利用者:Mr.Q氏)
音声VLAN
既にVLAN6つできていて、そこに電話機専用VLANを追加してみる。というもの。
snom300いぢり
ファクトリーリセットかけるところまで行った
オートプロビジョニング機能の有無と、概要を作成
AAstra53iいぢり
高橋氏イチオシの電話機
オートプロビジョニング機能の有無と、概要を作成
chan_sccp(2)
モーニングコール機能の作成
(一応、作成の目処は立った)

まったり頑張ってます

優先順位低めのもの。

IP-4N-ST101S
購入したものの、工事手順書が必要という、良くありがちなオチ
CDPとVLAN
CCNPの勉強も兼ねて。
OSSではCDP喋るモノもあるが、Voice VLAN設定に役立つかどうか、は不明
IPP-3000
chan_sccpにぶら下げてみる。
WirelessIP5000
WiFi電話機ネタ追加。NTT WI-100HC(WIP3000)の姉妹機らしい
Asterisk1.6のCLIネタ研究
あじるほんにあっさり繋がってしまった。なんかツマラン
QoS
大規模な構築になると出現するネタ。CCNPの勉強も兼ねて。(CCNA取ってない)
セキュリティネタ
パケットフィルタリングのネタにイメージ図を追加
Saxaいぢり
コミケの後にじっくりと。
xCubeハックと同時進行させると面白い事になるらしい(ラインキー的な意味で)
CP-7940Gいぢり
バージョン6.4(6.3?)以降だとMWI周りの挙動に注目すべき。と聞いたものの、
そこまで手が回ってないというオチ。
OpenAsteriskサーバー建立案
「IAX喋る、お遊び専用VoIPサーバー欲しいよね~」と
複数の元G-LEXユーザーの声があったので検討してみる(計画倒れの可能性アリ)

頑張ってません (終わったもの)

Quintum Tenor BX816いぢりシリーズ ~NTP設定~
設定投入後は必ずtimesync -aな! お兄さんとの約束だゾ!!
終了
はじめてのC
Cisco機器で「CME入れる前に設定すべき」基本設定ネタの作成
基本は「ぐぐれ」で。
終了
CCNA
ヽ(`Д´)ノ
CP-7900シリーズとマルチバイトについて
CLIDおよびDNISのマルチバイト表記ネタを調べてみたものの、具体的な成果なし。終了
(気が付いたときに、もういっちょ調べてみたい)
WS-C3550-24PWRいぢり
eBGPによる接続完了。一区切りついたので一旦終了
Quintum Tenor BX816いぢりシリーズ ~ファームウェアアップグレード~
バージョンアップ終了→Quintum_Tenor_Firmware_VersionUP
Astlinux0.6.2
chan_sccp入ってないのは仕方ない。
OCNの050番号発着信が出来るようになったので糸冬了
冬のお祭り計画
IP電話機(主にCiscoの電話機の方)でお客さんを釣り放題したので終了
Playtone(extensions.conf)でチャルメラを奏でてみたい
周波数の指定だけで各音階指定できる気がする。
ACT P123Sの本体撮影
googleの画像検索に引っかかるようにがんがります。
CME
玄箱Asteriskと連携させるところまで記事書いたんで、一応の区切りとしてClose
Cisco電話機用の壁紙
Asteriskな壁紙を用意し、サンプルとして配布する予定
chan_sccp
SetCalledPartyの意味を探る
発信先の名称を出すアプリケーションらしい