Centos7でkeepaliveを設定する方法

Centos7でkeepaliveを設定する方法

CentOS 7でTCPキープアライブを設定する方法と場所は何ですか?

私はそれを見つけようとしました:

[michael@devserver ~]$ cat /etc/sysctl.conf
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).
[michael@devserver ~]$ cat /usr/lib/sysctl.d/* | grep keep
[michael@devserver ~]$ cat /run/sysctl.d/* | grep keep
cat: /run/sysctl.d/*: No such file or directory
[michael@devserver ~]$ cat /etc/sysctl.d/* | grep keep
[michael@devserver ~]$ cat /usr/lib/sysctl.d/* | grep keep
[michael@devserver ~]$ ls /proc/sys/net/ipv4/ | grep tcp_keep
tcp_keepalive_intvl
tcp_keepalive_probes
tcp_keepalive_time
[michael@devserver ~]$ cat /proc/sys/net/ipv4/tcp_keep*
75
9
7200
[michael@devserver ~]$ whereis tcp_keepalive
tcp_keepalive:[michael@devserver ~]$ whereis tcp_keepalived
tcp_keepalived:[michael@devserver ~]$ whereis keepalive
keepalive:[michael@devserver ~]$ whereis keepalived
keepalived:[michael@devserver ~]$ ls /etc | grep keep
[michael@greenbeantech ~]$

ベストアンサー1

これTCP接続維持ガイドTCP キープアライブを構成する 2 つの方法を示します。

  • procfs インターフェイス

  • システム制御インターフェース

すでに見つけたように、/ procファイルに新しい番号を作成してこれらの値を更新できます。たとえば、次のようになります。

echo 600 > /proc/sys/net/ipv4/tcp_keepalive_time

またはsysctlを介して:

sysctl -w net.ipv4.tcp_keepalive_time=600

...しかしどちらもありません再起動後も変更は保持されます。

再起動後も変更を保持するには、その値をに入力(または転送)する必要があります/etc/sysctl.conf。私の前にCentOSシステムがありませんが、/etc/sysctl.confが/etc/sysctl.d/

私の提案は、次の形式で/etc/sysctl.d/にファイルを作成することです。

net.ipv4.tcp_keepalive_time=7200
net.ipv4.tcp_keepalive_intvl=75
net.ipv4.tcp_keepalive_probes=9

sysctl ファイルは数値順に読み取られるため、値が優先的に適用されるようにするには、次の警告に注意してください。

特定の設定のみを上書きするには、/etc/sysctl.d/に語彙名の付いたファイルを追加し、ここに新しい設定を配置します。

おすすめ記事