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/に語彙名の付いたファイルを追加し、ここに新しい設定を配置します。