今 Mona OS 上で実際に動いている Web サーバーを公開しています。アクセスしてみてください。(uIPのコネクション数制限のため、接続がリセットされることがあります。その場合は時間をおいてアクセスをお願いします) http://test.monaos.org (公開終了) 先日の初めての公開時には、たくさんの人にご協力いただきました。 その結果、いくつか致命的な不具合が発覚しました。ここ半月ほどデバッグし、不具合が修正できたと思うので再公開します。 Apache Bench による並行 20 コネクション、30万アクセスまでは確認できています。 アクセスできた方はもし良かったら、スターでもブクマでもコメントでもTwitter良いので教えてくれると励みになります。 寝るときに落とすので2時間くらいで停止します。 サーバー情報 MonaOSは QEMU 上で動いています。 ネットワーク
I am sure many programmers writing network applications have their own abstracting layers hiding the differences between various I/O multiplex APIs, like select(2), poll(2), epoll(2), ... And of course, I am one among them. While writing mycached (see Mycached: memcached protocol support for MySQL for more information), I was at first considering of using libev for multiplexing socket I/Os. Libe
LANケーブル。 それは我々にとっては無くてはならない命の源。 人間で例えるなら血管に相当する、すべての根幹となる線材です。 普通はこのLANケーブル、業者に手配したり、そこらの店で適当な物を買ってきたりするのですが、私のような商売をしていると、 という事態が、たまにあります。 まあ、だいたいは 手配漏れ とか、 やっべwww配線してみたらなんか長さ足んねぇwww 買いに行くのだりいww急ぎで作ってwww とかいう、しょっぼい理由だったりしますが... さてそうなると気にしなくてはいけないのが自作ケーブルの品質。 10Mや100Mbps程度までなら、まあなんとかヨリを極力戻さないよう気を付けて作って、最後は1万円程度のやっすいケーブルチェッカーで導通だけ確認すれば、まあよっぽど酷い作りをしなければ多少ヤバくてもバレやしない大丈夫でした。 だがしかし。 世はまさにGigabitEtherne
日本では携帯電話基地局の通信ケーブルが相次いで切断される事件が発生し、NTTドコモやau、ソフトバンクモバイルが被害に遭ってしまったわけですが、海外でもシリコンバレー地下のダークファイバーケーブルを何者かが切断、シリコンバレーエリアでの電話・インターネットコネクション・携帯電話などが使用不可になるという大事件が現地時間(太平洋標準時)の4月10日に発生しました。 この件について、光ファイバーによる北米-アジア間のインターネット接続帯域幅とコロケーションサービスを提供し、あの2ちゃんねるなどを裏から支えていることでも有名な「Pacific Internet Exchange」の方から話を聞くことができました。 どれぐらいの被害だったのか、一体何がどういう順で起きたのか、いろいろと聞いてみた詳細は以下から。 まずは時系列順に何が起きたのか。 02:00 何者かがマンホールを開け、地下通路に侵入
ところで、出張で東京に来ています。 5人いるんですが、マンションにまだネット環境がありません。 ということで、このe-mobileのカードを使ってインターネット接続を5人で共有するという方法を編み出しました。 仕組みは、Windowsに標準装備されている「ICS(Internet Connection Sharing)」という機能を使った小型ホームネットワークです。 結構おもしろい仕組みになったので構築の方法を紹介。 利用するのは以下 e-mobaileのカード パソコン複数台 LAN環境(今回は無線LANのアクセスポイントと各マシンに無線LANカード) ちなみにICSについては以下が詳しいです。 ■@IT Windows 2000/Windows XPのICSを活用する http://www.atmarkit.co.jp/fwin2k/win2ktips/044nat/nat.html
はやいTCPサーバの書き方 - nyaxtのPC作業ログ で id:nyaxt さんが書いてらっしゃるように、 epoll や kqueue を使う TCP_NODELAY, TCP_DEFER_ACCEPT *1 等を活用する TCP パケットを意識する I/O システムコールの回数を最小にする sendfile といったあたりは、確実にやるべきことだと思います。一方で、TCP 関連以外のオーバーヘッドが実は結構あって、 接続のタイムアウト処理 ログの出力 メモリの確保や解放をやらない あたりにも気を配る必要がある、と思います。 接続のタイムアウト処理については、以前 Kazuho@Cybozu Labs: 高速なCometサーバを書いてみた件 に書いたように、ビットアレイのリングバッファを使うのがベストだと思います。 ログの出力について、複数行を1回のシステムコールにまとめてもいいかど
はやいTCPサーバの書き方 - nyaxtのPC作業ログ について、いくつか気になった点があったので。 Nagleアルゴリズムは、相手側のACK送信をまとめてくれるものです。これは、下記の様にアプリケーション側でパケットを意識した処理を行っている場合、邪魔になることがあります。 違うと思います。自分の理解では、Nagle アルゴリズムは、ACK を受信していないデータがある場合に、次のパケットを送信しない、というものです。RFC896 から引用すると、 The solution is to inhibit the sending of new TCP segments when new outgoing data arrives from the user if any previously transmitted data on the connection remains unackn
FONって「プライベートネットワークを安全に保ったまま、外部にネットワークを貸し出すことのできる」ツールだと思ってたのですが。 実はそんなでもなく、少しだけ複雑なネットワークを組んでしまうと、すぐに脆弱性が露呈するという、非常に頼もしいツールだったりした訳です。はい。 ネットワークに入られちゃうよぉぉおおお 家の中にネットワーク(サブネット)が二つあると、FONがつながっている方のネットワークは安全に守られるんだけど、FONが参加していない方のネットワークは丸見えになってしまいます。 「そんなネットワークは、そんなに無いだろ(苦笑」っていう人もいるかも知れないけど、実はそんなでも無くて 病院 市役所 学校 とか、普通にサブネット複数あります。そして、こういう所に居る自称物知りさんが「こういうFONってのがあるんだZE☆」とか言いながら、ネットワーク管理者に無断でFONを設置しちゃったりして
先週の金曜日に行われたサーバ/インフラ Tech Meetingの資料を公開します。 この本を書いたわけ - ひろせまさあき(PDF, 1594KB) DSASのこれから - 安井真伸(PDF, 529KB) はてなの伊藤さん、田中さんの発表資料も既に公開されています。 サーバ/インフラ Tech Meeting の資料など - naoyaのはてなダイアリー はてなのインフラ、いまむかし @ サーバ/インフラ Tech Meeting - とあるはてな社員の日記 また、当日の動画もニコニコ動画にアップされています。cojiさんありがとうございました! サーバ/インフラ Tech Meetingの動画 - TechTalk.jp これらの資料、動画や、当日の会場の写真などは、まとめて技評さんのサイトにもアップされると思いますので、そちらもチェックしてみてください。 サーバ/インフラ Tech
そして、残った7個のCIDRブロックに対してネットワークアドレスのマッチングをすればよいので、最大でも14回の数値比較で結果を得ることができます。これならば、32ビットの二分木検索(IP::Country)よりも計算量は少なくて済むはずです。 アセンブラでも書いてみた もう、だいぶ昔の話になりますが、アセンブラ(6502,Z80,68000)で遊んでいた時期がありました。ちょうどそのころ、バイナリサーチ、バブルソート、クイックソートなどの「アルゴリズム」と呼ばれるものにはじめて遭遇し、「これはすごい!」と純粋に感動していたことを覚えています。 その記憶が甦ったのか、なにを血迷ったのかわかりませんが、なぜかふと、「cidr_lookupをアセンブラで書き直せばもっと速くなるんでね?」と思い、インラインアセンブラで書き直してみたのがこちらのコードです。処理の内容は上記のものとまったく同じです。
■ 解放されたIPアドレスが別の人に割り当てられるまでの時間 昨日、某ISPから自宅に電話があった。セキュリティ係だそうだが、サポートセンター要員なのかマニュアル通りに話すだけで、こちらからの説明に対して、判断を要するような話になると会話が通じず、現場責任者の方と交代して頂いても埒が明かなかった。 今後の成り行きによっては、大変なことになる。 急遽調べておきたいのは次のことだ。 PPPoE接続のISPのように、ユーザのIPアドレスが頻繁に変わる回線において、IPアドレスの割当が解放されてから、同じアドレスが別のユーザに割り当てられるまでの時間。 たとえば、「48時間は割り当てられないようにされている」といった運用のISPがあるとか、「制限はなく、数分以内に別のユーザに割り当てられることもある」という運用が普通だとか、そういった事実関係を知りたい。
■ 一般家庭向けISPのIPアドレスはどのくらい変化しているのか 前回の日記では、脚注9で「もし、家庭向けのインターネット接続サービスで、IPv6アドレスの上位アドレスが固定的に割り当てられるようになったら、上位アドレスで個人が特定されてしまう。そこで、上位アドレスについても、現在のIPv4アドレスの割当と同様に動的に割り当てられるように運用するべきである」と書いた。では実際のところ、現在のIPv4アドレスはどのくらい変化するものとなっているだろうか。以前からたびたび「Yahoo!BBのIPアドレスは固定で変化しない」という噂を耳にするのだが、本当だろうか。 そこで、2006年8月末から観測しているWinnyノードのIPアドレスから*1、その状況を推定してみた*2。図1は、2008年6月末までの1年10か月分の観測データから*3、Winnyノード(IPアドレスとポート番号の組*4)の継続存
Related Utilities SmartSniff - Capture TCP/IP packets on your network adapter Description SocketSniff allows you to watch the Windows Sockets (WinSock) activity of the selected process. For each created socket, the following information is displayed: socket handle, socket type, local and remote addresses, local and remote ports, total number of send/receive bytes, and more. You can also watch the
※最後に見た動画が正常に取得できませんでした。 動画を見てから再度訪れると、ここに最後に見た動画の情報が表示されます。 動画を視聴する度に変わります。
本当に見つけたいポートスキャン行為とは? 皆さんこんにちは、川口です。先日知人と会ったときに、バブル絶頂期のファッションに身を包んでいた知人の20年前の写真が出てきました。「いまでもたまにこういうバブルの名残のある人っているよね」と話題になり、大盛り上がりでした。 そしてファッションと同様、セキュリティの動向にも時代の波があります。セキュリティの考え方が時代に取り残されていると無駄なコストを払うことになります。私がたまに見掛ける時代遅れな考え方とは、「ポートスキャンは攻撃の予兆であり、ポートスキャンをされたことを見つけたら、これに対処するべきである」というものです。私は「セキュリティを専門にする人以外は、インターネットから行われるポートスキャンを見つけることはほとんどセキュリティの役に立たない、ましてや予兆として対処することも非常に難しい」と考えています。 攻撃者はポートスキャンで何を狙う
上を行くかどうかは知りませんが :-p Ajaxはクライアントの都合でサーバーに通信を仕掛けるpull型の通信ができ、Cometはサーバーが好きなタイミングでクライアントへデータを送りつけるpush型の通信ができるわけですが、新たに双方向の通信ができる技術を開発しました。 具体的には、JavaScriptとサーバーの間で双方向のRPCができます。すなわち、サーバーからクライアント側のJavaScriptのメソッドが呼べるし、逆にクライアント側からサーバー側のメソッドを呼ぶこともできます。 サーバー側で call("addMessage", "Hello!") とやると、JavaScript側の function addMessage(msg) { ... } という関数が呼ばれたりします。 この技術を使って、試しにチャットシステムを作ってみました > デモ (ソースコード)*1 リアルタイ
id:nyaxt氏との共同開発の分散ストレージ「Cagra」(かぐら)のアルファ版をリリースしました。 cagra α3リリース cagra テクニカルデモ α2リリース 分散ストレージエンジンテクニカルデモ α版リリース cagraのα版試してみたよ - takumalog Cagraは以下のような特徴を持った(目指した)P2P分散ストレージです。 Zeroconf マルチマスタでレプリケーションするWrite 高速な分散Read オプションで高速な非同期Write インターネットレベルよりもLANレベルのマシン台数に特化 巨大データサポート 高速イベント駆動システムコール+軽量スレッド 超アジャ〜イルな開発体制 まだα版で全部が実装されているわけではないですが、とりあえず動きます。 Zeroconf UDPマルチキャストでノードを自動的に発見するので、一切設定ファイルを書かずに動作せる
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く