Redhat linux,CentOSにおいて、arp cache、arp tableのtimeoutはどれくらいかということが以下に書かれています。 arp キャッシュで未使用の近傍 arp エントリーがフラッシュされるまでにどのぐらいかかりますか? - Red Hat Customer Portal まず、IPv4 で arp フラッシュを制御するカーネルパラメーターがあります。 net.ipv4.neigh.default.gc_interval = 30 net.ipv4.neigh.default.gc_stale_time = 60 ここが重要です。 これは、近傍 arp の生存時間はこの 2 つのパラメーターだけでなく、「ルートキャッシュ」にも依存しています。「ルートキャッシュ」の同じエントリーが削除された場合に限り、arp エントリーがフラッシュされます。 さらに、テストす
IPv6ブリッジ機能付きルーター (ブルータ) を使えば、 NAT 内の LAN でそのまま IPv6 を使えるわけで、 IPv6 の敷居は一気に下がる。 つまり、ほとんどの OS がすでに IPv6 をサポートしているので、 ルータが IPv6 を素通し (ブリッジ) しさえすれば、 LAN 内で IPv6 を意識せずに使える。 今まで通り IP を (NAT 経由したプライベートアドレスで) 使いながら、IPv6 のオイシイところ (end-to-end 通信ができる) だけを ツマミ食いできるわけで、 今度こそ (^^;) IPv6 が普及するのではないかと... Linux でブルータを実現するには、 まずブリッジ機能をカーネルに組み込んでおく。 # brctl show br0 bridge name bridge id STP enabled interfaces br0 80
はじめに BPFの基礎 BPFの構造 BPFでのフィルタリング レジスタマシン LinuxでのBPF BPFを利用したパケットフィルタリング libpcapとBPF ここまでのまとめ 参考文献 その他参考URL はじめに BPFはBerkeley Packet Filterの略で,1993年に効率的なパケットフィルタリング手法として提案されました[1] *1. BPFの構成要素は大きく2つあって,一つがネットワークからパケットをキャプチャする部分,そしてもう一つがキャプチャした パケットをフィルタリングする部分です.BPFといった場合,後者のフィルタリング機構だけを指すことも多いです. FreeBSDなどのBSD系のOSでは/dev/bpf*という特別なデバイスがあって,このBPFを利用することができます.また, Linuxでもパケットフィルタリング(Linux Sokcet Filter
この記事は CyberAgent Developers Advent Calendar 2018 9日目の記事です。 今回はBPFについてちょっと調べてみた。それのまとめ。落ちはない。 なぜBPFを調べようと思ったのか 要はBPFを調べようと思った動機をちょっと。 唐突にはなってしまうが、Kubernetesの上に乗っかるService Meshに関するミドルウェア(Istio/Envoyあたり)などでネットワークのレイテンシが問題として話に出ることがそこそこある。 基本的にService MeshのツールはコンテナのSidecarとして動作させ、Networkの通信をすべて見えるようにiptablesで自身にルーティングさせて、Proxyするように動作する。 これの解説としてよく見るのは以下のような図だ。 これ始めてみたときに個人的にはゾッとしたが(latency大丈夫なのか的な。)、実
tcpdpの中のお話です パケットを一時的に保持するバッファ google/gopacket/pcap パッケージでパケットを取得するようなツールを作る場合、2つのバッファを持つことになります。 libpcapが持つバッファ google/gopacketが持つバッファ(バッファ付きチャネル)。1000で固定。 パケットは加工されつつ上記のバッファを経由して、最後にgopacketからパケットを受けとることになります。 そしてバッファには、以下のような特徴があります。 libpcapが持つバッファが溢れたらパケットロスが発生します gopacketのバッファサイズは固定です libpcapは ImmediateMode がOFFだと、libpcapが持つバッファにある程度パケットを貯めてからまとめて返します 上記特徴からみても、ツールが正しく動くようにするためには いかにlibpcapのバ
tcpdump(iptraceなど)とfirewall(ipsec、iptablesなど)はどっちが先? ソケット通信がハーフオープンになってしまうって事象が発生しました。 こういう時には、tcpdumpで調べますよねってことで、通信トレースを取得して解析をしてみると、どうやら、ハンドシェイクの時に、syn、syn ackと通信があってackが返せていないって感じでした。 syn、syn ackまで通信ができているってことは、ネットワークルーティングや機器間のFirewallとかには問題ないだろうって推測で、 ソースとなる機器側がackを返せない理由を調べていました。 結果として、機器自体のfirewall(AIXでしたので、IPsecのフィルター)で該当のインバウンド通信が閉じていたからなんですけど、 まてよと、インバウンドを閉じているなら、tcpdumpにsyn ackが記録されたのは
arpingはARP要求を用いてターゲット端末の死活確認を行うソフトウェアである。ファイアウォールでpingが利用できないという場合に役に立つ。ARPはリンク層プロトコルであるため、arpingも基本的には同一ネットワーク内でしか使用できない。但し、Proxy ARP経由で他のネットワーク内に存在する端末の死活確認を行えるケースも存在する。 Linux版はPythonを用いて作成されているが、libpcapおよびlibnetライブラリを用いて移植性を高めたC言語バージョンも存在し、このバージョンではOpenBSD、FreeBSD、Solarisなどでも動作する。 送信元MACアドレスの詐称とプロミスキャス・モードを併用することで、送信元を隠蔽した状態で死活確認を行う機能も設けられている。 $ arping 192.168.39.120 ARPING 192.168.39.120 from
Request for Comments (RFC) 2217 プロトコルによってサポートされている Ethernet Device Server (EDS) を使用して、仮想シリアル・デバイスおよびテレタイプ (tty) デバイスを AIX® オペレーティング・システムで作成します。 Serial over Ethernet (SoE) デバイス・ドライバーを使用すると、Request for Comments (RFC) 2217 プロトコルによってサポートされている Ethernet Device Server (EDS) を使用して、仮想シリアル・デバイスおよびテレタイプ (tty) デバイスを AIX オペレーティング・システムで作成できます。 EDS の例として、Digi デバイスや Perle デバイスがあります。 SoE デバイス・ドライバーの機能性は、実 COM (通信)
Linux基本コマンドTips一覧 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ルーティングテーブルを管理する「ip」コマンドです。 ipコマンドとは? 「ip」コマンドは、ネットワークデバイスやルーティング、ポリシーなどの表示と変更を行うコマンドです。従来は、ifconfigコマンドやnetstatコマンド、routeコマンドなど、net-toolsパッケージに収録されているコマンド群を使用していました。現在は、いずれもipコマンドへの移行が進んでいます。 「ip addr」(連載第146回)や「ip link」(第147回)のように、「オブジェクト」と組み合わせて使用します。今回はネットワークの経路情報(ルーティングテーブル)の表示や変更を行う「ip route」を取り上げます。従来はrouteコマンドで表示や変更を行っ
自鯖にnmap -Fしたらタイトル通りだったのでぐぐってみた。 弁財天: rpcbindの111番ポートのsystemd脆弱性 update2 どうやらsystemdが111番ポートでLISTENしてる実装が脆弱性らすい。rpcbindのポートはNFSを動作させるのに必要だったのはNFSv3までの話で、いまのNFSv4では不要。 以下の設定をして再起動。 # cp -a /usr/lib/systemd/system/rpcbind.socket /etc/systemd/system/ # vi /etc/systemd/system/rpcbind.socket [Unit] Description=RPCbind Server Activation Socket [Socket] ListenStream=/var/run/rpcbind.sock #ListenStream=[::
とりあえず、参考: http://claris.hp.infoseek.co.jp/basic/etc_file_1.html 掲示板で見つけた説明: http://oshiete1.goo.ne.jp/qa528314.html --抜粋させていただく------------------------------------------------------- >そもそもrpcbindがどのような機能をするのかがわかっていません。 >これを止めていたらどのような影響がでてくるのでしょうか? RPC(Remote Procedure Call)系のサーバ・クライアント(NFS、NISなど)が 接続できなくなります。 rpcbind はLinuxではportmapperデーモンと呼ばれています。 普通TCP/IP系のサーバはhttpは80 smtpは25とポート番号 が決まっているので、クラ
systemd メーリングリスト より: systemd-timesyncd はネットワークを介してシステム時刻を同期させるために追加されたデーモンです。SNTP クライアントが実装されています。chrony や NTP リファレンスサーバーなどの NTP 実装とは対照的に、timesyncd はクライアント側しか実装しておらず、完全な NTP の複雑性に悩むことなく、リモートサーバーに時刻を問い合わせてそれにローカルクロックを同期させることだけに焦点を置いています。NTP をネットワークのクライアントに提供したりローカルのハードウェアクロックに接続したいのでなければ、このシンプルな NTP クライアントだけでほとんどの場合は十二分に間に合います。デーモンは最小権限で動作し、networkd と紐付けられることでネットワーク接続が有効なときだけ同期を行います。Raspberry Pi や組
Debian vs Ubuntu: ネットワークインタフェースの名前 Debian と Ubuntu の違いについて深追いする超不定期連載第 2 回は ネットワークインタフェースの名前の付けかたについてです (なお第 1 回は 1 年半くらい前の記事 でした)。 今回は Debian/Ubuntu ばかりでなく Red Hat 系のディストリビューションも深追いしました。 2014/12/31 更新: Moriwaka さんのご指摘 をいただき Red Hat 系ディストリビューションの記述を修正しました。 biosdevname は RHEL 6.1 から導入されています。 永続的な名前・予測可能な名前 Linux カーネルのネットワークインタフェースは、 ドライバが検出した順に eth0 eth1 … といった名前がつけられるようになっています。 ただしこれだけでは各デバイスがプローブ
Anything that changes the names of your network interfaces may result in the machine suddenly not being reachable over SSH, so if you're editing settings on a remote server, plan your changes carefully and doublecheck your safety nets. This page deals with the various schemes by which wired and wireless network interfaces are assigned names - that is, the underlying system labels like eth0 or wlx8
普通の状態では、readやrecvfromはデータが受信できるまでブロッキングします。 ソケットを一つしか利用していない場合にはブロッキングは非常に便利なのですが、ソケットが複数になると困ってしまいます。 複数のソケットを扱うとき、片方のソケットでブロッキングしたままになってしまうと他のソケットにデータが到着しても受信が出来なくなってしまいます。 そのため、複数のソケットを扱っていると、どのソケットからデータが受信可能か知りたくなります。 ブロッキングとは、関数が返ってこない事を表します。 例えば、readはデータを受信して関数が戻ってきます。 言い方を変えると、データを受信するまでブロックしています。 readやrecvfromをブロッキングしないノンブロッキング方式で使う事も可能ですが、ここではブロッキング方式のまま使う方法を説明します。 そのような機能を提供するのがselectです。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く