タグ

ブックマーク / www.geekpage.jp (22)

  • TCPだけでDNSサーバにqueryできるようになってた:Geekなぺーじ

    DNSメッセージといえばUDPの53番というイメージの方々も非常に多いと思いますが、1987年に発行されたRFC 1035の時点でDNSメッセージのトランスポートとして利用できるのはUDPとTCPであると記述されています。 しかし、これまでDNSにとってはUDPが基でした(ゾーン転送を除く)。「RFC 1123: Requirements for Internet Hosts」には、以下のようにあります。 DNS resolvers and recursive servers MUST support UDP, and SHOULD support TCP, for sending (non-zone-transfer) queries. Specifically, a DNS resolver or server that is sending a non-zone-transfer

    kamipo
    kamipo 2016/07/15
  • BGPフルルートは必要か?GREEの事例:Geekなぺーじ

    「インターネットに接続された全てのネットワークへの経路」であるBGPのフルルート(Full Route)を「ネットワークエンジニアの夢」と表現するネットワークエンジニアもいます。INTEROP Tokyo 2014のShowNetでも、あえてフルルートを受け取らないAS運用がテーマのひとつでした。 さて、そんなフルルートですが、「それって当に必要なの?夢とかロマンとか感情的な話じゃなくて、現実問題として必要なの?」といった方向性の議論がコンテンツ事業者などの間で増えつつあります。 今回は、2年前にフルルート運用から脱却したグリー株式会社インフラストラクチャ部の黒河内倫氏に、何故フルルートの運用をやめたのかや、それによって何が変わったのかを伺いました。 フルルートを捨てる決断を促した障害 GREEがフルルートを捨てる決断をしたのは、2年前、2012年の夏に発生した障害が原因でした。当時G

    kamipo
    kamipo 2014/08/14
  • DNSキャッシュポイズニングの基本と重要な対策:Geekなぺーじ

    2014年4月15日に公開されたJPRSの緊急注意喚起に続き、中京大学の鈴木常彦教授によるDNSキャッシュポイズニングに関する技術情報が公開されました。 今回公開された技術情報に書かれている内容には、DNS質につながるさまざまな要素が関係しており一回で書ききれるものではなく、また、書いている側(私)も、それぞれの要素技術について勉強しながら理解しつつ進めていかないと混乱してしまうということが良くわかったため、これから数回に分けて徐々に書いて行くことにしました。 ということで、今回はまず、そもそもDNSキャッシュポイズニングとは何かということと、JPRSの注意喚起に書かれているUDPソースポート番号のランダム化(ソースポートランダマイゼーション)の概要、そしてなぜそれが重要なのかという点について解説します。 DNSキャッシュポイズニングとは インターネットで通信を行うとき、各機器同士は通

    kamipo
    kamipo 2014/04/25
  • 強烈なDNSキャッシュポイズニング手法が公開される:Geekなぺーじ

    日、JPRSが緊急の注意喚起を公表しました。 緊急)キャッシュポイズニング攻撃の危険性増加に伴うDNSサーバーの設定再確認について(2014年4月15日公開)- 問い合わせUDPポートのランダム化の速やかな確認・対応を強く推奨 それに対して、2月中旬に脆弱性を発見してJPRSへと報告していた鈴木氏(脆弱性は前野氏との共同発見)が、JPRSの注意喚起では「危険性をよく理解して対策をとるにあたって十分な情報が含まれているとはいえません」として、以下の情報を公開しています。 開いたパンドラの箱 - 長年放置されてきたDNSの恐るべき欠陥が明らかに キャッシュポイズニングの開いたパンドラの箱 キャッシュポイズニングの開いたパンドラの箱 - 2 - 来であれば、より上位からの正規の回答が優先されなければならないはずなのに、下位側が優先される仕様になっているので、偽装されたデータが優先されてしまう

    kamipo
    kamipo 2014/04/16
  • .inドメイン名停止とwhois公開代行:Geekなぺーじ

    今日(4月30日頃)、一部の人々の間で「うちのWebサイトで使ってる.inの名前解決が出来なくなった!」という悲鳴が聞こえています。 数年前、インドのccTLD(country code Top Level Domain)である「.in」を日国内のWebサービスで使うのが流行しました。 「.in」は「イン」と読めるため語呂が良く、個人が気軽にWebサイトを作ったときに、ドメイン名も同時に登録するというのが流行ったわけですが、そのときにwhoisで世界に向けて連絡先(個人であれば氏名住所電話番号の場合もあり)を公開されるのは嫌だということで、whois情報公開代行サービス(もしくはプライバシー保護サービス)を使うというのが割と一般的に行われていました。 しかし、その.inのレジストリであるINRegistryが、whois情報公開代行サービスを利用しているドメイン名を次々と停止しているよう

    kamipo
    kamipo 2013/04/30
  • Geekなぺーじ:MessagePackがIETF標準化に巻き込まれてる件について

    ここ数日、MessagePackがIETFにおける標準化に巻き込まれてザワザワしています。 何が起きているかというと、MessagePackプロジェクトとは関係が無い第三者がIETFで派生物の標準化を進めようとしています(binarypack、Informational RFCとして)。 binarypackは、自らをMessagePackの派生であるとしながらも、MessagePackとの後方互換性が無いものです。 MessagePack is in danger! binarypackのInternet-Draftを提出しているのは、coreと6lowpanのchairです。 Chairであるかどうかが議論そのものに与える影響はそこまで大きくないとも言えますが、少なくともIETFでの話の進め方に精通した人物であることは確かです。 ただ、今回のInternet-Draftは、その人物がC

    kamipo
    kamipo 2013/02/26
  • CGN用途のISP Shared Address - 100.64.0.0/10:Geekなぺーじ

    ISPがCGNなどで利用するためのISP Shared Address(100.64.0.0/10)がIANAで予約され、ISP Shared AddressのRFC6598が日発行されました。 RFC6598: IANA-Reserved IPv4 Prefix for Shared Address Space 感覚としては10.0.0.0/8、172.16.0.0/12、192.168.0.0/16に続いて第4のプライベートIPv4アドレスが誕生したような感覚ではありますが、100.64.0.0/10はサービスプロバイダネットワーク内でのみ利用される点で異なります。 IPv4アドレス在庫枯渇に伴い、サービスプロバイダ内のネットワークでグローバルIPv4アドレスを使わないことで、IPv4アドレスを節約することが求められるようになりました。 しかし、既存のプライベートIPv4アドレスは各

    kamipo
    kamipo 2012/07/06
  • 「DNSの浸透」とアプリケーションのキャッシュ:Geekなぺーじ

    さきほど「DNSの浸透」に関して書いたのですが、それに対して「でもTTLを無視するDNSキャッシュサーバがいるから仕方がない」というような反応が一定数登場しています。 「浸透」の話になると、そのような話がほぼ必ず登場するのですが、実際に「この製品がTTLを無視する」とか「このISPで運営されているDNSキャッシュサーバはDNSプロトコルに違反している」という具体例をいまのところ見た事がありません。 「そういう困ったDNSキャッシュサーバも居るんだよ」とか「でもTTLを越えたあとも旧IPアドレスにアクセスあるもん」という感じの主張が多いです。 そんなところにsumikawaさんから以下のようなTweetを頂きました。 確かに、DNSの世界におけるTTL情報はアプリケーションには届かないので、権威DNSサーバのTTLを事前に小さくしたとしても、アプリケーションが持っているキャッシュは制御ができ

    kamipo
    kamipo 2011/10/30
  • なぜ「DNSの浸透」は問題視されるのか:Geekなぺーじ

    DNSの浸透」という表現が結構よく使われています。 DNSに設定された情報を更新したけれど、その結果がなかなか反映されずに誰かに相談すると「DNSの浸透には時間がかかります」と説明されて納得してしまうという事例が多いようです。 しかし、うまく準備を行えば、実際の切り替え処理は、いつ完了するのかが不明な「DNSの浸透」を待つのではなく、事前に計画した時間通りに完了させることが可能です。 さらに、来であればDNS情報の設定者(ゾーン情報の設定者)は、いつまでに世界中のキャッシュが更新されるかを知ることができる環境にあり、それ以降も更新がされていなければ「何かがおかしい」とわかるはずです。 DNSにおける設定内容(DNSのリソースレコード)には、その情報をキャッシュとして保持し続けても良い期間であるTTL(Time To Live)という要素がありますが、TTLはDNS情報設定者が自分で設定

    kamipo
    kamipo 2011/10/27
  • 「魔法の数字8.8.8.8」を検証する:Geekなぺーじ

    ここ数日、8.8.8.8や8.8.4.4というIPv4アドレスを持つGoogle Public DNSに関する話題が盛り上がっているのですが、多くの人が「よくわからないけど設定変更したら早い!」と言っているので、そこら辺の話を調査してみました。 昨日、Twitterとブログでtracerouteやdigによる調査協力のお願いを発信し、8.8.8.8へのtracerouteを37件、8.8.8.8とISP DNSへのtraceroute比較及びAkamaiキャッシュサーバへのtraceroute比較を21件、日各地及び海外のいくつかの地点からご協力頂けました(皆様ありがとうございました!)。 それらのデータをもとに、Google Public DNSを利用した場合の通信経路と、それによる遅延に関する検証を行いました。 Google Public DNSに対する私の感想 まず最初に。 調査前

    kamipo
    kamipo 2011/09/22
  • イランからGoogleへのSSL通信が傍受されていた疑い。CAから発行された偽証明書が原因:Geekなぺーじ

    多くのユーザがSSL通信(https)の中身を傍受されていた可能性があるようです。 今回、この問題が報告されたのはイラン国内からのGoogleへの通信を行った場合です。 約2ヶ月間にわたってイラン国内からのSSL通信で、検索結果、Gmailに含まれるメールの中身、その他情報が傍受されていたかも知れません。 EFF: Iranian Man-in-the-Middle Attack Against Google Demonstrates Dangerous Weakness of Certificate Authorities Google Online Security Blog: An update on attempted man-in-the-middle attacks 傍受の手法 来、暗号化されたSSL通信の傍受は困難です。 今回利用された方法はMan-In-The-Middl

  • 解雇されたエンジニアが外部からVM削除で業務停止:Geekなぺーじ

    解雇された37歳のエンジニアが、隠し持っていたパスワードを利用してマクドナルドから企業ネットワークへとログインし、次々と重要な業務システムをVMWareホストシステム上から削除していったとComputerworldの記事にあります(米国の事件です)。 事件そのものは2011年2月3日に発生し、7月に起訴されました。 Computerworld: Fired techie created virtual chaos at pharma company 記事によると15のVMWareホストシステム上で稼働していた88個のサーバを次々と削除していったようです。 外部からVMを削除されたシオノギ製薬の業務は数日間停止してしまったと記事にあります。 従業員は製品の出荷などの業務をできなくなるだけではなく、メールのやりとりも出来ない状態だったようです。 記事によると、容疑者が解雇されたのは2010年7

    kamipo
    kamipo 2011/08/24
  • Geekなぺーじ : IPv4アドレス枯渇。その意味と恐らくこれから起きること

    今のインターネットはIPバージョン4で動作していますが、そのIPv4で各機器を識別するためのIPv4アドレスが遂に事実上枯渇しました(参考)。 長年「枯渇する」と言われ続けていましたが、それが遂に現実の物となりました。 ここでは、IPv4アドレス枯渇とは何かと、それによって何が起きるのかを紹介します。 IPv4アドレス枯渇に関して、アナログ放送の停波と地デジへの移行や、原油枯渇と似たようなものであるような認識が多く見られますが、個人的にはIPv4アドレス枯渇後のIPv4アドレスのアナロジー(類比)としては相撲の親方株の方が近い気がしています。 まず、アナログ放送の停波と地デジへの移行ですが、アナログ放送は2011年7月に一斉に停止します。 しかし、IPv4アドレスの場合は、ある日突然IPv4が使えなくなるわけではなく、今まで使っているIPv4アドレスはそのまま使い続けられるという意味でアナ

  • さくらインターネットのネットワーク構成:Geekなぺーじ

    先月、さくらインターネットのネットワーク構成を調べました。 興味がある方はどうぞ。 IPv4によるAS間接続 まず、whoisを利用して、さくらインターネットが保持しているASを調べてみると、AS9370、AS9371、AS7684の3つあることがわかります。 次に、それらのAS番号を基にCyclopsで調べると、各ASと接続されているASに関しての情報がわかります。 Cyclopsは、世界各所で公開されているBGPフルルート情報をまとめて見やすくしてくれるネットサービスです。 結構素敵なので良く使ってます。 Cyclopsに掲載されている情報を見ると、以下のように東京と大阪のAS同士でEBGP接続を行っていることがわかります。 EBGP的に東京と大阪を接続することで、東京と大阪の間が完全に切断されたとしても大丈夫になるような冗長構成にしてあるようです。 この図では、さくらインターネットの

    kamipo
    kamipo 2010/10/14
  • Geekなぺーじ : Linuxネットワークプログラミング

    ここでは、Linuxを使ったネットワークプログラミングの説明を行いたいと思います。 ここで対象としている読者は、ネットワークプログラミング初心者(もしくは入門者)かつLinux環境でプログラミングを行いたい人です。 開発環境としては、C言語+gccを想定しています。 説明内容は主にソケットプログラミングになります。 なお、C言語そのものが初めての方は「C言語入門」も参考にどうぞ。Windows専用には書いてませんが主にC言語で共通の部分を解説しています。 コードを書く前の準備 まず、gccを使える状態にしないといけません。 ディストリビューションにもよりますが、Linuxを普通にインストールしただけでは開発環境は入りません。 開発環境を用意するためには、gccやglibcなどのrpmを必要に応じてインストールしてください。 次に、エディタが必要になります。 mule、emacs、xemac

  • 既に起動しているプロセスをgdbで制御する:Geekなぺーじ

    デバッグやテストを行っていると、プログラムが無限ループに入り込んで返ってこないような状況が発生することがあります。 そのバグが再現の難しいものであれば「gdbを使って起動しとけば良かった。。。」というような気分になる時があります。 しかし、gdbには既に起動しているプログラムの制御を横から奪い取ってデバッグするというありがたい機能があります。 ここでは、既に起動しているプログラムをgdbでいじる方法を説明したいと思います。 実際にデバッグをする方法を説明するというよりは、gdbで動いているプロセスにアタッチする例を説明します。 その後のデバッグに関しては、いつものgdbの使い方をしていただければ大丈夫です。 とりあえずアタッチしてみる 既に起動しているプロセスをgdbを解析するのは非常に簡単です。 単にgdbでプロセスにアタッチするだけです。 gdbでプロセスにアタッチする方法は2つありま

    kamipo
    kamipo 2009/07/03
    gdbでプロセスにアタッチする方法は2つあります。一つ目はgdbに-pオプションをつけて呼ぶ出す方法です。二つ目はgdbを起動後にattachコマンドでプロセスにアタッチする方法です。
  • PHP GDプログラミング:Geekなぺーじ

    ここでは、PHP用グラフィックライブラリGDを使ってスクリプトを書く方法を説明したいと思います。 GDを使ったCMSを作ると、画像をサーバにアップロードして自動的にサムネイルを作ったり出来ます。 また、GDを使うと任意の絵を作成できるので、例えばAJAXと組み合わせて色々作ると楽しいかも知れません。 その他、色々と使いどころはありそうです。 基 GDの使い方 GDライブラリの設定情報を確認する 四角く塗りつぶす 画像の読み込み PNGの出力 JPEGの出力 画像の拡大と縮小 画像の回転 TrueType Fontを使った文字列出力 TrueType Fontを使った文字列出力(傾きあり) TrueType Fontで文字列を記述した場合の大きさを測る TrueColor画像(1) TrueColor画像(2) 画像上に文字列を表示 画像上にロゴをオーバーレイ 画像フィルタ 明度 カラーバ

  • Geekなぺーじ : みんなが知らずに使ってるAkamai

    Akamaiさんでのセミナーに参加してきました。 個人的にはAkamaiさんと言えば「あまり一般的には知られていないけど使っていない人はほぼいない」企業というイメージがあります。 あまりに内容が楽しかったので、セミナーで色々質問しまくって聞いてしまいました。 想像以上に色々凄いと思いました。 ブロガーのyasuyukiさんが企画し、Akamaiさんにお願いして実現したプライベートセミナーでした。 元々はyasuyukiさんがAkamaiさんのセミナーを聞いて「面白い」とtwitter上で囁きまくっていて、その後「プライベートなセミナーやったら来ますか?」とのオファーを頂きました。 昔からAkamaiさんのCDN技術には非常に興味があったので「是非お願いします」とお願いしました。 セミナー参加者募集はyasuyukiさんのブログとtwitter上で行われ、16人の参加者がいました(アカマイさ

  • Geekなぺーじ : TCP vs RTP:何故RTPが必要なのか?

    インターネットを流れるトラフィックのほとんどがTCP(Trasmission Control Protocol)によるものです。 TCPは、全てのデータが正しく相手に伝わることを保証するため品質の高いデータ通信が実現できます。 また、どのパケットが受け取れなくて、どれが受け取れたかなどをわざわざ考えなくても良いので、プログラムを書くのも簡単です。 では、何故、わざわざRTPというものが必要だったのでしょうか? ここでは、まず最初に何故RTPはTCPではなく、UDPの上に存在しているのかを説明したいと思います。 (もちろん、TCPの上に作ることはRTPの規約上は可能ですが、現実的にはUDPの上でしか実装がないと思います。) その後、何故、UDPの上に共通のRTPというものを構築したのかを説明したいと思います。 RTPは、名前にもある通り、「リアルタイム」なデータを転送するためのプロトコルです

  • 優秀なプログラマを雇う方法:Geekなぺーじ

    「A Guide to Hiring Programmers: The High Cost of Low Quality」という記事と、その記事への捕捉として後ほど投稿された「A follow up to "A Guide for Hiring Programmers"」という記事がありました。 プログラマの雇い方というタイトルではありましたが、内容はもう少し広いです。 一部著者の熱すぎる想いが加熱しているように見える部分や、アメリカ的事情に見える部分もありましたが、全体的に興味深い内容でした。 以下、2つまとめた要約です。 3番までが一つ目の記事で、4番以降が二つ目の記事要約です。 誤訳等が含まれている可能性があるので、是非原文をご覧下さい。 概要 Perlのコミュニティでプログラマを雇う事(特にPerl開発者)を話し合っていて、以下の点で知人達と合意ができた。 どのようなプログラミング

    kamipo
    kamipo 2008/10/19