利用者: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)
- その存在を初めて知ってしまった。
個人ベースで依頼するなら、こっちかな(´-`)
余談
- 某コールセンターでは、声に定評のある社内オペレータさんにIVRの音声を吹き込んでもらっていたそうな。
- 外資系では、有名どころの声優さんに吹き込んでもらったそうな。
- 音声カスタマイズの際、(数年経過しても)同じ人に声を吹き込んでもらえるかどうか。が難点らしい。
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にぶら下げる場合は、険しい獣道が待っている。
考えられる原因としては下記の通り。
- 使う人が少ない(電話機そのもののエンドユーザー数はそれなりに多いらしいが・・・)
- 敷居が高い(DHCPサーバー設定、TFTPサーバー設定、チャネルドライバ、必要なハードウェアetc)
- 日本語の情報が少ない
- 高い(価格が)
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を無効にする。
元ネタ
ダイヤルプラン
ダイヤルの設定に関するもの色々 DialPlan-1 (dp 1) Prompt Commands
MAXDNlength
Tenorがダイヤルを受け付ける、最大桁数を設定する。
最大30桁まで設定可能だが、MINDNlengthで設定した最小桁数を下回ることは出来ない。
- config-DialPlan-1* set maxdn 25
- 最大で25桁までのダイヤルを受け付ける
- config-DialPlan-1* set maxdn 2
- 最大で2桁までのダイヤルを受け付ける
元ネタ
MINDNlength
Tenorがダイヤルを受け付ける、最小桁数を設定する。
最小1桁まで設定可能だが、MAXDNlengthで設定した桁数を上回ることは出来ない。(同じケタ数はOK)
- config-DialPlan-1* set mindn 3
- 最低で3桁からのダイヤルを受け付ける
- config-DialPlan-1* set mindn 15
- 最低で15桁からのダイヤルを受け付ける
元ネタ
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 (以下略)
元ネタ
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秒間隔で仕事をしている。仕事振りは下記の通り
- INVITEパケットを投げる(あて先は、PrimarySIPServerに書いてあるホスト)
- 5秒待つ
- 最大で5回までInviteパケットを投げる。それでも反応が無い場合はPrimarySIPServer死亡確認(王大人的に)。
- Secondary Serverが代わりに選択される。
- PrimarySIPServerが息を吹き返した時に備え、SIPパケット(OPTIONS)を定期的に投げる。(定期的に「生きてるか」パケットを投げる)
- PrimarySIPServerが息を吹き返しても、Secondary Serverが死亡確認されるまで、Secondary Serverを使いつづける。
(PrimarySIPServerを使わない) - 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を開放する。(使えるようにする)
元ネタ
PowerOffBypass[1]
Tenorの電源が落ちたときに、電話回線ポート1とポート2をバイパスさせる。
停電時に、電話回線ポート1にISDN回線を接続しておき、停電専用の緊急用電話機を活かしたい時に使用する。
通常時(電源が入っている)
ISDN電話機の電源はOFFのままで、通常では使えないようになっている。
停電時(電源が落ちている)
電話回線ポート2にISDN電話機を接続しておくと、Tenor BXの電源が落ちている時に
ISDN電話機の電源が入る。
元ネタ
PhantomPowerPassthru
BRI専用の設定となるので要注意
48Vの電圧をISDN電話機に供給するかどうかを設定する。
元ネタ
システム内部の構成
Tenorはシステム内部に複数のスロットを持っているが、Tenor BXやAS、CMSでは構成が異なる。
Ciscoでのinterface GigabitEthernet0/9の0にあたる個所となる。
- 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の意味を探る
発信先の名称を出すアプリケーションらしい