2011/11/01 (火)

2011-11-01:When NAT is used Guest OS can’t setup TCP connection but UDP is ok

昨日の続き。Google で検索したら、vmware community の投稿がひっかかった。
Searching Google, I found an article in vmware community page.

When NAT is used Guest OS can’t setup TCP connection but UDP is ok
http://communities.vmware.com/thread/286162

一年前の記事だ。。。
条件はいっしょで、VMWare Server 2 on Windows7 64bit に NAT 接続の Guest を用意した際に UDP は通るが TCP が飛ばない、という。
ただ、外からの TCP が通ることは書かれてない。
It was written one year ago…
The condition is the same. It says that using VMware Server 2 on Windows7 64bit edition, guest OS can’t setup TCP connection but UDP packet goes through.
But it is not mentioned that TCP connection to Guest OS from outside is OK.

既知の問題なのねー、と思いつつ、せっかくなのでパケットキャプチャーして調べてみることに。
以下、環境説明。192.168.20.61 が新マシン、192.168.20.62 が別の Linux マシンで、192.168.20.61 上に VMware の NAT で 192.168.91.0/24 のネットワークがある。
I know it is not new issue though, let’s try to capture network packets.
My network is in below: my PC has vmnet8 for NAT and has 192.168.91.0/24 for private network in NAT.

my PC 192.168.20.61 / 192.168.91.2
guest 192.168.91.4
Other PC 192.168.20.62


まずは問題なく通る UDP のキャプチャの絵。
ふつーに外の NTP server と通信ができている。
At first, captured image of UDP.
It is no problem, able to communicate with NTP server in the internet.



続けて、192.168.20.62 で ssh 192.168.20.61 して、port forward 先の 192.168.91.4 に接続した際のキャプチャの絵。
こちらも問題なく通信ができている。
Next, doing “ssh 192.168.20.61” from 192.168.20.62.
The packets of ssh is forwarded to 192.168.91.4.
No problem.



そして、いよいよ通信できない Guest から外へのキャプチャの絵。
むむむ。。。
Finally, uncommunicatable TCP connection from Guest to outside.
mmm…

SYN に対する SYN ACK がない! / No SYN ACK for SYN !!

3way handshake のしょっぱなでこけてるじゃないですか。そりゃつながらんだろう。
It fails at the begining of 3way handshake. Oh yes, it can’t setup connection.

おそらく vmnet8 のソフトウェア的なミスで、SYN ACK が迷子になっているか、出せていないんでしょうね。
キャプチャーしたところで自力解決できそうな感じのものは出てきてないわけですが、まぁ少しは様子が分かりました。
とりあえず、どうにもならんですな。
I think there are some software bugs that block or lost SYN ACK packet in vmnet8.
And I know that I can’t find any clue to solve the problem by myself.

comment

2011/10/31 (月)

2011-10-31:新マシンセットアップ、VMware まわりでハマる

Windows7, Office2010 と入れたので、続けて作業環境の構築。

まずは dokodemo
これはキーボード・マウスの共有ソフト。自分はながらく使ってる Let’s Note R シリーズのキーボードが一番なじんでいるので、仕事場でもキータイプは Let’s Note のキーボードでしているのだ。
まずはこれをインストールしないと、これからの作業をする気にならない。^^;

ちなみに、写真のようにデスクトップ機のモニタは3枚構成。もともと手持ちの2画面DVIなグラフィックボードに、今回は core-i7 分のグラフィックが一枚追加になった。


続けて、VMware Server 2 のインストール。
もともと日常作業のほとんどを emacs か gnome-terminal の上で行っているワタクシ。OS は Windows だけど、そこに VMware で GuestOS に Linux マシンを動かし、Xming 使って X を Windows 上に出す生活にしているのです。
が、この VMware Server 2 が難敵だった。
いろいろな管理を web interface でする作りになっているのだけど、まず最初にブラウザを

IE の 32bit 版を管理者権限で動かさないとならない

というのが分かるまで時間を浪費。
Firefox でやってて、以前のマシンの HDD から GuestOS のイメージをコピーして電源オンはできるものの、コンソールがまったく開けず(どこにコンソールの機能があるか分からず)だった。そもそも Firefox ではリンク自体がでないものだとはね。。。

で、無事に GuestOS が起動したと思ったら、また問題。

GuestOS から外の世界に TCP パケットが飛ばない。

使用するネットワークアダプタは vmnet8。つまり NAT 接続(Bridge にはしたくない派)。
GuestOS から外部のマシンに ping は飛ぶし、ntpdate で時刻合わせもできる。つまり ICMP も UDP も大丈夫。しかし TCP が通らない。ssh でつなぎに行くことも apt-get することもあたわず。
さらに不思議なのは、

外のマシンから GuestOS への ssh ログインはできる

のだ(ポートフォワード設定してる)。なんじゃそりゃ。。。

コピーしてきた GuestOS のイメージが悪いのか、と別で新規にゲストを作っても、同様にダメ。
今日のところは時間切れであきらめる。むぅ。

comment

2011/10/30 (日)

2011-10-30:仕事場マシンの新調

仕事場の普段遣いのデスクトップPC、実は4年選手で、CPU が Pentium4 なんて今時だと化石扱いされかねないものだったりする。
それでもメインが X を飛ばしてきての Emacs 内での作業なので、「ちょっとブラウザが重たいかなぁ」くらいで気にせず使っていたのだけど、最近になってセキュリティソフトを NOD32 から Norton に変えたら、

イヤになるほど遅いということを実感した

ので、新調することに。
もともとパーツ集めた自作機なので、ケースと PCIe な2画面 DVI のグラフィックボード、DVD-RW ドライブは継続利用。
それ以外に以下を買い揃えました。

  • CPU core-i7 2600K (27000yen程度)
  • MB Gigabyte Z68XP-UD3R (15000yen程度)
  • SSD Intel 120GByte x2 (36000yen程度)
  • mem 4Gx2 (5000yen程度)
  • PW 750W (8000yen程度)
  • OS Windows7 Professional 64bit750W (18000yen程度)

いまってメモリこんなに安いのね。。。
お買いもの後、さっそく仕事場に持ち込んで、デスクまわりの配線整理をしつつ組み上げる。

すごい、イマドキのデスクトップってこんなにサクサク動くの?!

びっくりだ。10万円程度でこんなに威力があるなら、もっと早くやっとけって話だな。。。

Windows7 をインストールし、Gigabyte 付属の CD でオンボードのグラフィックと NIC のドライバを入れ、Office2010 をインストールしたあたりで、今日はひとまず作業終了。
中身のセットアップは明日以降に。

comment

2011/10/02 (日)

2011-10-02:WirelessGate 申し込み


普段、新幹線移動中は寝てるか、停車駅近辺で WiMAX つないでのメールチェック程度のネット利用のワタクシ。
しかしながら、今回の帰りの新大阪~東京間ではネットにつないで仕事がしたくなりました。
いきなり今日だけ N700 の車内無線LANが使いたい人はどうしたらいいかしら、と twitter につぶやいたら、さっそく自分のフォロワーさんのさらにフォロワーさんから「ワイヤレスゲートを使え」とアドバイスいただく。@ttmtko さん、感謝!

新大阪での発車待ち時間含めて、WiMAX で http://www.wirelessgate.co.jp/service/plan を見て、都内で地下鉄駅でも使えるということで「ホットプラス+プラス」という月額480円のサービスに決めて申し込み。
ワイヤレスゲートとしてのユーザー名・パスワードを無事に取得。

で、自分のマシンをどうつなぐの、というと ワイヤレスゲートコネクション なるアプリをインストールしなさい、という。
ので、素直に従ってインストールし、先のユーザー名・パスワードを入力して、車内に飛んでる ESSID を選択して接続しようとするが。。。つながらない。
何度やっても

ログインできませんでした。(code=-2)

と出てダメ。
どうもこのワイヤレスゲートコネクションがダメアプリくさい、ということで、すっぱりとアンインストール。

ワイヤレスゲートの web ページに、アプリを入れずに接続するやり方も書いてあったので、それでやったらちゃんとつながった。
なんだかんだと、接続ができたときには名古屋駅。新大阪~京都~名古屋の間が苦闘時間。

つながったあとは、東京駅まで接続切れることなく使えました。
回線の帯域はそんなにないみたいだけど、自分のしたい作業はサーバに ssh で入っての CUI なものだったので、特に速度は気にはならず。
速さより、つながり続けてくれることが大事ね(screen 使ってはいますけど)。

iTouch の設定も仕込んでおいて、明日の都営線の駅でも試してみよう。

comment

2011/10/01 (土)

2011-10-01:Apple ID 復活

iTunesStoreSupport_jp@apple.com の中の人がパスワードリセットをかけてから、新しいパスワードをメールで送ってくれて、ようやく自分の Apple ID で再びサインインできるようになった。
対応ありがとうございました。 < 中の方
さっそくアップデート通知がきていたアプリをアップデート。

月曜にアップルストアに行ってスタッフに相談して、web の問い合わせフォームから問い合わせて数度のやり取りをして、土曜に解決。
一回のメールやりとりで1日かかっちゃう(向こうはアメリカ西時間が営業時間)のが難点ですな。

comment

2011/08/17 (水)

2011-08-17:Lisp 向け SyntaxHighlighter

SyntaxHighlighter 系プラグインとして、Syntax Highlighter and Code Prettifier Plugin for WordPres を使用している。
ただ、デフォルトでは Lisp に対応してなくて、emacs ネタで elisp 書いた時に残念だったので、対応させてみた。

SyntaxHighlighter はハイライトしたい言語の種類ごとに js を用意する仕組みなので、Lisp 用の js をゲットして適切に組み込めばよい。
今回使わせていただいたのは http://blog.knuthaugen.no/2009/10/a-syntaxhighlighter-brush-for-lisp.html にあるもの。
このコードを shBrushLisp.js というファイル名で wp-content/plugins/syntax-highlighter-and-code-prettifier/scripts/ 以下に保存。
続けて、syntax-highlighter.php というファイルに以下の一行を追加。追加する場所は、まぁ分かるでしょう。

<script type=”text/javascript” src=”<?php echo $current_path; ?>scripts/shBrushLisp.js”></script>

これで、あとは投稿時に <pre class=”brush: lisp”> タグで書けば、ハイライト表示してくれる。

sample

(set-default-coding-systems 'utf-8)
(server-start)
(setq-default show-trailing-whitespace t)


(custom-set-faces
 '(font-lock-warning-face ((t (:foreground "Blue" :weight bold)))))

(require 'auto-complete)
(require 'auto-complete-config)
(global-auto-complete-mode t)
comment

2010/08/01 (日)

2010-08-01:wordpressのテーマ

自作せんと。
どうやるんだろ。

comment

2010/07/12 (月)

2010-07-12:まつりのあと

ワールドカップが終わった次の日。
夜帰宅したら、嫁がテレ朝のワールドカップ総括特番を見ていた。
つづけて、スカパーのジャンルカなう最終回。

うーん、、、泣く。
ワールドカップ楽しかったな。4年後は現地に行こう。

comment

2010-07-12:being wired

今日は外での打ち合わせ等々で、昼前から外に出ていたのだけど、そんなときに限っていろいろトラブル発生。
いまわたし、外で自分の PC を外につなぐ手段を持ってないのよね。
さっさと mobile WiFi 系を買うべきなんだろうなぁ。

とっさに、iPhone で TouchTerm という SSH クライアントソフトを iTunes で買ってみたが、どこのサーバにも接続できず。iPhone 自体の OS を新しくしてないのがいけないのかしら。。。いまだ 3.0.1 を使い続けているワタクシ。

comment

2010/07/09 (金)

2010-07-09:WindowsXP をさっさとシャットダウンさせるための User Profile Hive Cleanup Service

Adobe のアップデートのせいで仕事場の Windows XP の再起動をさせられたのだけど、いざ再起動させようとするも、画面上で見た目アプリはすべて落ちてるのに、ぜんぜんシャットダウンが終わる気配がない。
業を煮やして電源スイッチをぽちっとなしてしまった。

なんか策ないのかなぁ、と Google 先生に聞いたら、microsoft が配ってる User Profile Hive Cleanup Service というものを発見。

User Profile Hive Cleanup Service は、ユーザーのログオフ時にユーザーセッションを完全に終了します。ログオフ時にシステム プロセスやアプリケーションが、ユーザー プロファイルのレジストリキーへの接続を解放しない場合があります。このような場合、ユーザーセッションが完全に終了できません。このような現象は、サーバー環境で移動ユーザー プロファイルを使用している場合や、Shared Computer Toolkit for Windows XP によってプロファイルをロックした場合に発生することがあります。

とのことで、入れた途端にさっくりシャットダウンができるようになった。
あまりにあっさりシャットダウンするので笑ってしまうくらい。もっと早く知っておくべきだったなぁ。

comment

2010/07/05 (月)

2010-07-05:予期しないエラー 0x8ffe2740

調べ物で、手元のマシンの IIS を起動しようとして、

予期しないエラー 0x8ffe2740 が発生しました

をくらう。うわー、このエラー見るの何年ぶりだろう。^^;

これは IIS が待ち受けたいポート、つまり 80 番ポートが他ですでに使われているときに出る。
VMware Virtual Network で、仮想の子の 80 番にフォワードしてた。これを解除して、無事に IIS 起動。

comment

2010/06/03 (木)

2010-06-03:sshトンネル維持のための自動再接続に便利なautossh

データセンターに置いている自分用のサーバへ、手元の PC から ssh のトンネルを張って日常業務をしているのだけど、自分がいるところの回線が不安定だと頻繁にトンネルが切れてしまって、そのたびに手動で ssh コマンド叩くのがめんどくさい。
そんな状況のために、接続状態を自動検知して、切断時に勝手に再接続してくれるという便利なコマンドに autossh というものがある。。。ということを恥ずかしながらいままで知らなかった。

使い方は、これまで ssh と書いていたコマンドを autossh と4文字増やすだけ。簡単。
debian はパッケージがあって、BSD 方面も ports ですんなり入るようだ。しかし自分の手元のマシンは vine で、これ用のパッケージはないみたい。
じゃぁソースから野良ビルドでいいや、ということで、http://www.harding.motd.ca/autossh/ からリンクをたどって autossh-1.4b.tgz を落としてきて、/usr/local/src/ 以下で展開して、./configure; make; sudo make install した。
configure コマンド打つのって数年ぶりだなぁ。^^;

なんのエラーもなく無事にビルドでき、すんなり使えてる。わーい。
ちなみに自分が張ってるトンネルは

autossh XXX.XXX.XXX.XXX -Nf \
    -L 50025:localhost:25 -L 50143:localhost:143

こんなの。
ようするに、smtp と imap をデータセンター内のサーバに見に行くようにしてる。

comment

2010/05/31 (月)

2010-05-31:emacs23+wanderlustで丸数字つきメールを表示

どうもメール本文中に丸数字を使う御仁が私のまわりに多い。
いままでめんどくさがって、ほっかってたんだけど、やっぱり不便度が上昇してきたので、.emacs.el に設定追加。

(coding-system-put 'iso-2022-jp :decode-translation-table
                   '(cp51932-decode japanese-ucs-cp932-to-jis-map))

未定義領域の文字を UCS のものから引っ張ってくる、という機能。
丸数字つかいながら iso-2022-jp のメールだなどとほざくんじゃねぇ、というところですが、世にそういうメーラーがはびこっている以上しょうがないのよね。。。

comment

2010/05/28 (金)

2010-05-28:tircd.plの自動切断を防ぐ

先日来、ちょくちょく書いている IRC サーバとして振る舞い、twitter と連動してくれる tircd.pl。
気がつくと手元の IRC クライアントと切断している(正確には #twitter チャンネルから自動退出してる)ことが多く、なんだろうと思っていたんだけど、どうやら30分間トラフィックがないとそうなるらしい。
フォローする人を増やして常に誰かのつぶやきが流れるように、とも思ったけど、知り合いも日本のタイムゾーンで動く人ばかりなので、夜間にどうしても切れそう。じゃぁ、定期的につぶやいてるようなボットがあればいいね、ということで探したら、tokei20という、そのものズバリ、20分ごとに時刻をつぶやく bot を発見。
http://twitter.com/tokei20

こいつをフォローすることで自動切断問題が解決しました。
え、tircd.pl をハックすればいいんじゃって? キコエマセン。:-)

comment

2010/05/26 (水)

2010-05-26:.elmo/cache/ お掃除

重たいメールを送ってきたお客さんがいて、ディスクがいっぱいでメールがとりこめない、と wanderlust に怒られる。
あれれ、と思って df したら確かに100%だ。
というか、du -sh ~/.elmo/ したら 4.9G という出力。おいーーー^^;

そうとう昔のメールから .elmo/cache/ 以下にキャッシュされていた感じ。
find で最終更新が2年以上前のファイルは消して、とりあえず2G台まで小さくした。

[waasuke@pollux:waasuke]% cd .elmo/cache/
[waasuke@pollux:cache]% find . -mtime +730 -print0 | xargs -0 rm -vrf
comment