hana_shinのLinux技術ブログ

Linuxの技術情報を掲載しています。特にネットワークをメインに掲載していきます。

AlmaLinux 8

ltraceコマンドの使い方

1 ltraceコマンドとは? 2 検証環境 3 インストール方法 4 オプション一覧 5 テストプログラム(以降TP)の作成 6 ライブラリ関数の実行順序を表示する方法 7 時刻情報を表示する方法 7.1 関数の実行時刻(秒単位)の表示方法(-t) 7.2 関数の実行時刻(マイク…

ソケットオプションの使い方(SO_REUSEPORT)

1 はじめに 1.1 ncコマンドの場合(SO_REUSEPORTを使用する) 1.2 iperf3コマンドの場合(SO_REUSEPORTを使用しない) 1.3 その他 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 事前準備 4 動作確認 Z 参考情報 1 はじめに SO_REUSEPORTは、同じ名前(ローカ…

ssコマンドのRecv-Q,Send-Qの意味について(LISTEN状態のとき)

1 はじめに 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 事前準備 4 テストプログラム(以降TP)の作成 4.1 サーバ側 4.2 クライアント側 5 Send-Qの確認 5.1 TPの引数に1を指定した場合 5.2 TPの引数に2を指定した場合 5.3 TPの引数に256を指定した場合 6 …

ソケットオプションの使い方(SO_REUSEADDR編)

1 SO_REUSEADDRソケットオプションとは? 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 事前準備 4 テストプログラム(以降TP)の作成 4.1 サーバ側 4.2 クライアント側 4.3 シーケンス 5 検証結果 5.1 SO_REUSEADDRを指定しない場合 5.2 SO_REUSEADDRを指定…

ソケットオプションの使い方(SO_SNDBUF編)

1 はじめに 2 ソースコードの説明 3 検証環境 3.1 ネットワーク構成 3.2 版数 3.3 カーネルパラメータのデフォルト値 4 事前準備 5 テストプログラム(以降TP)の作成 6 検証結果 Z 参考情報 1 はじめに SO_SNDBUF,SO_RCVBUFは、ソケットの送受信バッファの…

ソケットオプションの使い方(SO_SNDTIMEO編)

1 SO_SNDTIMEOとは? 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 テストプログラム(以降TP)の作成 4 検証結果 4.1 TPの引数に1を指定した場合 4.2 TPの引数に2を指定した場合 4.3 TPの引数に0を指定した場合 Z 参考情報 1 SO_SNDTIMEOとは? SO_SNDTIMEOは…

ソケットオプションの使い方(SO_RCVTIMEO編)

1 SO_RCVTIMEOとは? 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 テストプログラム(以降TP)の作成 4 動作確認 4.1 TPの引数に1を指定した場合 4.2 TPの引数に2を指定した場合 4.3 TPの引数に0を指定した場合 Z 参考情報 1 SO_RCVTIMEOとは? SO_RCVTIMEOは…

ssコマンドのRecv-Q,Send-Qの意味について(ESTABLISHED状態のとき)

1 はじめに 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 事前準備 4 Recv-Qの確認 5 Send-Qの確認 Z 参考情報 1 はじめに ssコマンドを実行すると、Recv-QとSend-Q という項目が表示されます。本記事では、Recv-QとSend-Qの意味について説明します。なお、s…

カーネルパラメータの使い方(tcp_tw_reuse編)

1 tcp_tw_reuseとは? 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 事前準備 4 tcp_tw_reuseが2の場合(デフォルト時)の動作確認 5 tcp_tw_reuseが1の場合の動作確認 Z 参考情報 1 tcp_tw_reuseとは? tcp_tw_reuseは、TCPコネクション確立時に使用していた…

ソケットオプションの使い方(SO_KEEPALIVE編)

1 TCP Keep-Aliveとは? 1.1 概要 1.2 ソケットオプション 1.3 シーケンス 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 テストプログラム 3.1 サーバ側TP 3.2 クライアント側TP 3.3 コンパイル 4 動作確認 4.1 相手から応答がない場合 4.2 相手から応答があ…

httpstatコマンドの使い方

1 httpstatコマンドとは? 2 検証環境 3 インストール方法 4 オプション一覧 5 基本的な使い方 6 転送スピードを表示する方法(HTTPSTAT_SHOW_SPEED=true) Z 参考情報 1 httpstatコマンドとは? Webサイトに接続するとき、そのWebサイトを表示するまでの時間を…

カーネルパラメータの使い方(tcp_fin_timeout編)

1 tcp_fin_timeoutとは? 1.1 正常シーケンス(パッシブクローズ側がclose()を実行する場合) 1.2 異常シーケンス(パッシブクローズ側がclose()を実行できない場合) 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 デフォルトの動作確認 4 カーネルパラメータ…

TCPの各種状態の作り方

1 はじめに 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 TCPの状態遷移 4 LISTEN状態の作り方 5 ESTABLISHED状態の作り方 6 SYN-SENT状態の作り方 6.1 作成手順 6.2 後始末(iptablesの設定削除) 7 SYN-RECEIVED状態の作り方 7.1 作成手順 7.2 後始末(iptabl…

coredumpctlコマンドの使い方

1 coredumpctlコマンドとは 2 環境 3 オプション一覧 4 事前準備 4.1 ユニット定義ファイル編集 5 core一覧をする方法(list) 6 core出力したプロセスの情報を表示する方法(info) 7 coreをファイルに出力する方法(dump) 8 特定のcoreを絞り込む方法 8.1 事前…

SELinuxコマンド概要

1 はじめに 2 環境 3 コマンド一覧 3.1 libselinux-utilsパッケージ 3.2 setools-consoleパッケージ 3.3 policycoreutilsパッケージ 3.4 policycoreutils-python-utilsパッケージ 3.5 policycoreutils-develパッケージ 3.6 policycoreutils-newroleパッケー…

コンテナーのネットワークについて

1 はじめに 1.1 コンテナ生成前 1.2 コンテナ生成後 2 検証環境 3 検証結果 Z 参考情報 1 はじめに podmanコマンドを使ってコンテナを生成した際のネットワークについて説明します。なお、podmanコマンドの基本的な使い方は、podmanコマンドの使い方 - hana_…

debuginfoパッケージのインストール方法

1 はじめに 2 検証環境 3 カーネルのdebuginfoパッケージのインストール方法 4 httpdのdebuginfoパッケージのインストール方法 Z 参考情報 1 はじめに カーネルやユーザアプリのdebuginfoパッケージをインストールしてみます。debuginfoパッケージをインスト…

podmanコマンドの使い方

1 podmanコマンドとは? 2 検証環境 2.1 ネットワーク構成 2.2 版数 3 インストール方法 4 オプション一覧 5 イメージを取得/削除する方法(pull/rmi) 5.1 AlmaLinuxのイメージ取得(最新版) 5.2 AlmaLinuxのイメージ取得(版数指定) 5.3 SUSE のイメージ取得(…