naoki86star

インターネットの片隅でなにかしら書いてみる

Computer Networking

VPS間遅延測定

前置き 最近は海外VPSの量も減らしてきました。*1 VPS間の通信遅延なんかは、netdata+fping w/ grafanaでだいたい評価できるのだけども、ちょっと数字をだしてみたくなったので自前測定。 原理 IPv4/udp で、ノード間を片方向独立で測定 送った側の送信時刻…

dpdk + openvswitch on intelのベアボーン(XCY J1900?)

先々月購入してみたintelCPU1G4ポートのPCで、dpdkを動かせそうだと思っていた。helloworldサンプルとかポートの認識とか簡単な動作はすでに見ることができていた。 今度は、openvswitchにはdpdkで動かす機能があるようなのでそれを試してみることにした。do…

maxminddbのupdateのこと

こういうこととかこういうこととかでMaxMindってところのIPデータベースとそのライブラリを使わせてもらったりしてます。ubuntuもPPAってのを追加することでapt経由でライブラリインストールできるので手間いらずで使えたりします。 が、IPデータベースであ…

Link Layer Discovery Protocol

vMXでevpn-vxlan試していたときとか、ICMP58再現のときにcumulus使ってみていたら、LLDPってプロトコルが脇からよく目に入ってきた。ナンデスカこれってことで調べた。 junosの設定exampleみるとよく set protocols lldpとか入っていた。cumulus(3.7.0)つな…

ICMP58 type2(Packet too big)

ICMP58 Type2(code0)というのを目にした。ナンデスカこれってことで調べたら、IPv6は中継装置ではフラグメントしない代わりにこのままじゃ通せないよって通知するために仕様化されているらしい。この仕事していながら次々と色々無知無勉強であると感じる。 I…

evpn-vxlan with vMX(eval)

先日のこのときにvMXで次はvxlanを試してみることを考えました。のですが、四苦八苦していて、VXLANの理解不足・JUNOSの理解不足はこれを改善するためにやっているにせよ、凡ミスにもはまりこみ結構時間たってしまいました。それでも単純なケースで動いてく…

vMX(eval)18.2 on eve-ng

vMX(eval)18.2R1.9をeve-ngで動かしたときのメモです。 当初、vMX(eval)18.2R1.9をeve-ngで動かそうとしてうまくいかなかったです。どこがか、というと、サービスポートに一番単純なinetの設定をしてpingが飛ばない。show interface ge-0/0/0としてもtxカウ…

IPv6/udpでのフラグメント

IPv6で1500byte overのudpを投げてみると、例えば3000byteで投げてみると、ちゃんと届きます。このときやっぱりパケットはMTUサイズに起因したした分割が発生しています。 import socket UDP = somewhere, someport MESSAGE = "*"*3000 sock = socket.socket…

gobgp + flowspec by nodejs

python使ってgobgpにflowspec投入するを試してみた後、今度はnodejsではどうか?やってみた。nodejsはサーバサイドをスクリプトだけで構築するのに選択肢のひとつに持っておくといいかなぁ、と考えているので。 最初、@grpc/proto-loaderとゆうのを使えば co…

junos-eznc

vmxも試してた流れで、今日は、junos用のpythonライブラリを味見。ubuntu18側で、 pip3 install junos-ezncvMX側で、 root# set system services netconf ssh [edit] root# set system login user admin authentication plain-text-password New password: R…

gobgpd + grpc + python in Oct/2019

ひと月ちょっと前より説明しやすいworkaroundが見えたので書いておきます。実は2年位前のここをそのまま真似たら悪くない結果だったです。OS:ubuntu18.04 python3(2でもいいと思う) gobgpd:2.9.0 grpc:pip3でインストール pip3 install grpcio grpcio-toolsp…

bird2.0.6 ; flow6でうまくいかなかったこと

birdでrtbh/flowspecをやってみた流れで書きます。 blackholeコミュニティないし/flowspec+コミュニティを付与した経路(/32)を送出するノードをTriggerと称したとき、そのTriggerノードがダウンしたら、その経路(=指示)は消えてしまいますです。なので、Tri…

BIRDでremotely triggered blackhole(+ flowspec)

このときのノード構成で、ルータをvMXに変えて、ついでにIPv6でも試してみる*1。コミュニティ投げるほうはBIRDのまま。 動機というかきっかけというか 前にVXLAN試したあとにもいろいろ読んでいて特に tech.fjct.fujitsu.com 読んでいたらもうすこしVXLANが…

vThunder on VirtualBox

A10社のThunderにもvmがあると知った。平凡な手持ちの環境で雰囲気だけでも味わうべくPCのVirtualBoxにインストールするということをやってみた。 動機 ddosプロテクションの機能で知られている(と思ってる)A10Thunderの仮想イメージをダウンロードできたの…

BIRDでremotely triggered blackhole(Linuxサーバで構成するネットワークモデル)

#最初に愚痴 今回はBIRD1.6での話、最初BIRD2.x(gitlab.labs.nic.cz版)で試みていたら挫折。*1*2 目的・動機 Linuxサーバで、ルーティングソフトウェアのひとつであるBIRD*3を動かすときに、RTBH*4を実現できるのか。ふと思ったので試してみる。 予習事項 B…

ipv6 over tunnel by vxlan

いまさらながら、自分の初めての hello VXLAN! な内容。IPv6パケットもIPv4で張ったVXLANを通るよねを試してみた。 きっかけ openflow switchのとある機種のマニュアルで、VXLAN可能、とあったのを見た。 昔々、BigIPってアプライアンスでVXLANが設定できる…

地球一周パケット

このtracerouteは東西の水平方向でパケットが地球一周しているはず traceroute to 149.28.26.x (149.28.26.x), 30 hops max, 60 byte packets 1 gw.infra.ds.melbicom.net (91.192.81.1) [AS56630] 0.893 ms 0.899 ms 0.892 ms 2 81-27-254-200.rascom.as207…

IPv4 と IPv6 とでギャップの大きいところ

小学生ではないけども、自由研究レベル的なネタ*1。IPv6を使うのが相対的にうれしそうな場所を探してみた。 シンガポールとモスクワの間のレスポンス時間がIPv6とIPv4の間で100ms近い差があるのを見た。これでチェック。 シンガポールからモスクワにあるvps…

NetDataのこと

redditしていて偶然知ったのがnetdataです。デモサイトの見栄えもいいのですけども、本質的には進化したサーバ監視エージェントだと思う、多分。 こんな風に動くそうです。エージェントのフレームワーク的な部分で、ある程度の時間幅のデータをキャッシュす…

Looking Glass雑文

先日書いたLooking Glassで思い出したのが、そういえば似たものは他にも見たことはあったよと、と雑文を書き出します。このあたりとかはウォッチポイントとても多く、特に北アメリカに住んでいたりすると期待高まったりしそうです。ただtracerouteの出力とか…

サーバからsflowを送信するサービスプロセスのこと

sflowを投げるほう、いわゆるexporterのプロセスを立ち上げる、という内容。いままでよくこれを試していたけども、Cumulus Linux*1はこれを使っているようなのでVMHausのインスタンスの一つに入れてみる。 apt-get install hsflowdで入らなかったので、githu…

sflowのパケットを観察するツールのこと

フロー解析のプロトコルといえば、NetFlowかSflowか、というステレオタイプの下で、自分の場合はsflowのほうを扱う機会がほとんどであり、全面的にsflowtoolというCLIのお世話になってます。最近githubの最新版で-Lオプションってのが追加されていて、フロー…

(備忘)exaBGP

exaBGP4.0.xを動かしてみようとしたら、いくつかつまずいたのでメモ*1 md5-passwordを平文で入れるときは、md5-base64 false;が必要 サービス起動スクリプトにいれておくといいのだけども以下が必須(パスは環境に合わせて)*2 mkfifo /run/exabgp.in mkfifo /…

クラウドでBGP接続体験してみる(2)

vmhausというvpsクラウド見つけました。とてもシンプルなVMのサービスをやってるところと見受けます。コンパネみたいなページに特にステータスとか、リソース履歴とかもいっさいないです。インスタンスの概要、現在チャージ額、サポートチケットページの3…

クラウドでBGP接続体験してみる

以前ovh.comのvpsを使ってみてると書いたことありますが、その後ovh.comに「BGPにつながせてもらえます?」とTicketシステムで聞いてみたら、だめだって帰ってきました(VPSは内部のネットワークにあるのでbgpは動いてなくてospfとかisisが動いているからだ…

floodlight(openflow contoller)のこと

このごろは、こんどはOpenFlow1.3を使うために、すこし、その準備のための学習というか実験してます。 自分の仕事では、floodlightというopenflow コントローラが使われてます。すでにopenflowスイッチも1.3モードで稼動もしているのですけども、1.3の機能の…

combinates tshark with tcpdump

TSHARK does't accept filters when reading from files, so I combinates tshark with tcpdump. tcpdump -r something.pcap udp and port 53 -w - | tshark -r - -V | lessyou know that tshark filter expression is storonger than tcpdump's.なんだかな…

About UDP...

Recently, I have learned that the UDP checksum is optional, i.e. the value can be zero, which means not to be calculated. When I got to know, I thought that this was one of a interesting specification of UDP. In version 6, UDP checksum is …