Como verificar se uma opção de socket de rede está configurada no Linux

LinuxBeginner
Pratique Agora

Introdução

Neste laboratório, você aprenderá como verificar se uma opção de socket de rede está configurada no Linux. Exploraremos o uso do comando ss com a opção -o para exibir informações estendidas do socket, permitindo que você visualize várias opções de socket, como o tamanho da janela TCP e MSS (Maximum Segment Size).

O laboratório guia você através do uso de ss -no state all para examinar os detalhes do socket, impedindo a resolução do nome do serviço para uma saída mais rápida. Você também aprenderá como interpretar a saída, que inclui o estado do socket, endereços e informações estendidas cruciais para diagnosticar problemas de desempenho da rede.

Verificar opções de socket com ss -o

Nesta etapa, exploraremos como usar o comando ss para verificar as opções de socket. O comando ss é uma ferramenta poderosa para investigar sockets de rede. É semelhante ao netstat, mas ss geralmente é mais rápido e fornece informações mais detalhadas. Vamos nos concentrar em usar a opção -o para exibir informações estendidas do socket.

Primeiro, vamos entender o que é um socket. Um socket é um ponto final de um link de comunicação bidirecional entre dois programas em execução na rede. Sockets são fundamentais para a programação de rede e compreendê-los é crucial para a solução de problemas e otimização de rede.

O comando ss com a opção -o permite que você visualize várias opções de socket, como o tamanho da janela TCP, TCP MSS (Maximum Segment Size) e outros parâmetros relacionados ao TCP. Essas informações podem ser inestimáveis para diagnosticar problemas de desempenho da rede.

Para começar, abra seu terminal.

Agora, vamos executar o comando ss com a opção -o para ver as informações do socket. Também usaremos a opção -n para impedir que ss tente resolver nomes de serviço, o que pode retardar a saída.

Digite o seguinte comando no seu terminal e pressione Enter:

ss -no state all

Este comando faz o seguinte:

  • ss: Invoca a ferramenta de estatísticas de socket.
  • -n: Impede a resolução do nome do serviço.
  • -o: Mostra informações estendidas.
  • state all: Exibe todos os sockets, independentemente do seu estado.

Você deve ver uma saída semelhante a esta:

Netid  State   Recv-Q Send-Q   Local Address:Port   Peer Address:Port  Process
nl     UNCONN  0      0                rtnl:kernel
nl     UNCONN  0      0          fib_trie:kernel
nl     UNCONN  0      0                 xfrm:kernel
tcp    LISTEN  0      4096               0.0.0.0:22          0.0.0.0:*
        skmem:(r0,rb369280,t0,tb87380) tclass 0 pclass 0
tcp    ESTAB   0      0           127.0.0.1:38768         127.0.0.1:22
        skmem:(r0,rb87380,t0,tb87380) tclass 0 pclass 0 rcv_space:2048,4194304,65535 rcv_qlen:0 snd_space:32768,4194304,65535 snd_qlen:0
tcp    LISTEN  0      4096                  [::]:22             [::]:*
        skmem:(r0,rb369280,t0,tb87380) tclass 0 pclass 0

A saída mostra várias conexões de socket, seus estados e outras informações relevantes. O campo skmem mostra o uso de memória relacionado ao socket. rcv_space e snd_space mostram os tamanhos dos buffers de recebimento e envio.

Agora, vamos filtrar a saída para focar em sockets TCP e incluir informações do processo. Isso nos ajudará a identificar quais processos estão usando sockets específicos.

Digite o seguinte comando no seu terminal e pressione Enter:

sudo ss -tnpo state all

Este comando adiciona as seguintes opções:

  • -t: Filtra para sockets TCP.
  • -p: Mostra o processo usando o socket.

Você deve ver uma saída semelhante a esta:

State   Recv-Q Send-Q   Local Address:Port   Peer Address:Port  Process
LISTEN  0      4096               0.0.0.0:22          0.0.0.0:*    users:(("sshd",pid=942,fd=3))
ESTAB   0      0           127.0.0.1:22          127.0.0.1:49134  users:(("sshd",pid=1147,fd=5))
LISTEN  0      4096                  [::]:22             [::]:*    users:(("sshd",pid=942,fd=4))

A coluna Process agora mostra o nome do processo e o PID (Process ID) associado a cada socket. Isso pode ser muito útil para identificar quais aplicativos estão usando conexões de rede específicas.

Ao usar ss -o, você pode obter informações valiosas sobre a configuração e o status dos sockets de rede em seu sistema. Essas informações podem ser usadas para solucionar problemas de rede, otimizar o desempenho da rede e entender como os aplicativos estão usando os recursos da rede.

Verificar as configurações do socket em /proc/sys/net

Nesta etapa, exploraremos como verificar as configurações do socket usando o diretório /proc/sys/net. O sistema de arquivos /proc é um sistema de arquivos virtual que fornece informações sobre processos em execução e configuração do kernel. O diretório /proc/sys/net contém vários arquivos que controlam os parâmetros de rede, incluindo as configurações do socket.

Compreender essas configurações é crucial para otimizar o desempenho da rede e solucionar problemas relacionados à rede. Essas configurações afetam como o kernel lida com as conexões de rede, tamanhos de buffer, timeouts e outros parâmetros críticos.

Para começar, abra seu terminal.

Vamos começar listando o conteúdo do diretório /proc/sys/net/ipv4. Este diretório contém configurações específicas para rede IPv4.

Digite o seguinte comando no seu terminal e pressione Enter:

ls /proc/sys/net/ipv4

Este comando listará os arquivos no diretório /proc/sys/net/ipv4. Cada arquivo representa um parâmetro de rede específico.

Você deve ver uma saída semelhante a esta:

conf  icmp_echo_ignore_all  icmp_ignore_bogus_error_responses  icmp_timestamp_ignore_replies  ip_default_ttl  ip_forward  ip_local_port_range  neigh  route  tcp_abc  tcp_adv_win_scale  tcp_allowed_congestion_control  tcp_congestion_control  tcp_dsack  tcp_ecn  tcp_fack  tcp_fastopen  tcp_fin_timeout  tcp_frto  tcp_keepalive_intvl  tcp_keepalive_probes  tcp_keepalive_time  tcp_low_latency  tcp_max_syn_backlog  tcp_max_tw_buckets  tcp_moderate_rcvbuf  tcp_mtu_probing  tcp_no_metrics_save  tcp_orphan_retries  tcp_reordering  tcp_retries1  tcp_retries2  tcp_rfc1337  tcp_rmem  tcp_sack  tcp_slow_start_after_idle  tcp_syn_retries  tcp_syncookies  tcp_timestamps  tcp_tw_recycle  tcp_tw_reuse  tcp_wmem

Agora, vamos examinar o valor de uma configuração específica. Por exemplo, vamos verificar o valor de tcp_syn_retries. Essa configuração determina quantas vezes o kernel tentará retransmitir um pacote SYN ao estabelecer uma conexão TCP.

Para visualizar o valor de tcp_syn_retries, use o comando cat:

cat /proc/sys/net/ipv4/tcp_syn_retries

Você deve ver um número como saída, normalmente 6. Isso significa que o kernel tentará retransmitir o pacote SYN até 6 vezes.

6

Você também pode visualizar o conteúdo de outros arquivos no diretório /proc/sys/net/ipv4 para ver seus valores atuais. Por exemplo, para visualizar a faixa de portas locais que o sistema pode usar, você pode visualizar o arquivo ip_local_port_range:

cat /proc/sys/net/ipv4/ip_local_port_range

A saída mostrará os limites inferior e superior da faixa de portas locais:

32768   60999

Para explorar as configurações relacionadas a todas as versões de IP, você também pode verificar /proc/sys/net/core.

ls /proc/sys/net/core
default_qdisc  dev_weight  message_burst  message_cost  netdev_max_backlog  optmem_max  rmem_default  rmem_max  somaxconn  warnings  wmem_default  wmem_max

E verifique o valor de rmem_default:

cat /proc/sys/net/core/rmem_default
212992

Ao examinar os arquivos no diretório /proc/sys/net, você pode obter uma melhor compreensão de como seu sistema está configurado para rede. Esse conhecimento pode ser inestimável para solucionar problemas de rede e otimizar o desempenho da rede.

Inspecionar a configuração do socket com sysctl

Nesta etapa, exploraremos como inspecionar as configurações do socket usando o comando sysctl. sysctl é um utilitário de linha de comando que permite visualizar e modificar os parâmetros do kernel em tempo de execução. É uma ferramenta poderosa para ajustar o comportamento do seu sistema, incluindo as configurações de rede.

sysctl lê e grava valores do sistema de arquivos virtual /proc/sys. Na etapa anterior, usamos cat para ler valores diretamente dos arquivos em /proc/sys/net. sysctl fornece uma maneira mais conveniente e estruturada de acessar e modificar esses parâmetros.

Para começar, abra seu terminal.

Vamos começar listando todos os parâmetros sysctl relacionados à rede disponíveis. Para fazer isso, podemos usar o comando sysctl -a e filtrar a saída usando grep para focar nas configurações de rede.

Digite o seguinte comando no seu terminal e pressione Enter:

sysctl -a | grep net.

Este comando faz o seguinte:

  • sysctl -a: Lista todos os parâmetros do kernel.
  • grep net.: Filtra a saída para mostrar apenas os parâmetros que começam com net..

Você deve ver uma longa lista de parâmetros relacionados à rede e seus valores atuais. A saída será semelhante a esta:

net.bridge.bridge-nf-call-arptables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-ip6tables = 0
net.core.bpf_jit_enable = 0
net.core.busy_poll = 50
net.core.busy_read = 50
net.core.default_qdisc = fq_codel
net.core.dev_weight = 64
net.core.message_burst = 10
net.core.message_cost = 5
net.core.netdev_max_backlog = 1000
net.core.optmem_max = 20480
net.core.rmem_default = 212992
net.core.rmem_max = 1703936
net.core.somaxconn = 128
net.core.warnings = 1
net.core.wmem_default = 212992
net.core.wmem_max = 1703936
net.ipv4.conf.all.accept_redirects = 1
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.all.arp_ignore = 0
net.ipv4.conf.all.arp_notify = 0
net.ipv4.conf.all.bootp_relay = 0
net.ipv4.conf.all.forwarding = 0
net.ipv4.conf.all.ignore_routes_with_linkdown = 0
net.ipv4.conf.all.log_martians = 0
net.ipv4.conf.all.mc_forwarding = 0
net.ipv4.conf.all.medium_id = 0
net.ipv4.conf.all.promote_secondaries = 1
net.ipv4.conf.all.proxy_arp = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.secure_redirects = 1
net.ipv4.conf.all.send_redirects = 1
net.ipv4.conf.default.accept_redirects = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.default.arp_filter = 0
net.ipv4.conf.default.arp_ignore = 0
net.ipv4.conf.default.arp_notify = 0
net.ipv4.conf.default.bootp_relay = 0
net.ipv4.conf.default.forwarding = 0
net.ipv4.conf.default.ignore_routes_with_linkdown = 0
net.ipv4.conf.default.log_martians = 0
net.ipv4.conf.default.mc_forwarding = 0
net.ipv4.conf.default.medium_id = 0
net.ipv4.conf.default.promote_secondaries = 1
net.ipv4.conf.default.proxy_arp = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.default.secure_redirects = 1
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.lo.accept_redirects = 1
net.ipv4.conf.lo.accept_source_route = 0
net.ipv4.conf.lo.arp_filter = 0
net.ipv4.conf.lo.arp_ignore = 0
net.ipv4.conf.lo.arp_notify = 0
net.ipv4.conf.lo.bootp_relay = 0
net.ipv4.conf.lo.forwarding = 0
net.ipv4.conf.lo.ignore_routes_with_linkdown = 0
net.ipv4.conf.lo.log_martians = 0
net.ipv4.conf.lo.mc_forwarding = 0
net.ipv4.conf.lo.medium_id = 0
net.ipv4.conf.lo.promote_secondaries = 1
net.ipv4.conf.lo.proxy_arp = 0
net.ipv4.conf.lo.rp_filter = 0
net.ipv4.conf.lo.secure_redirects = 1
net.ipv4.conf.lo.send_redirects = 1
net.ipv4.icmp_echo_ignore_all = 0
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.icmp_timestamp_ignore_replies = 0
net.ipv4.ip_default_ttl = 64
net.ipv4.ip_forward = 0
net.ipv4.ip_local_port_range = 32768 60999
net.ipv4.neigh.default.anycast_delay = 1
net.ipv4.neigh.default.app_solicit = 0
net.ipv4.neigh.default.base_reachable_time_ms = 30000
net.ipv4.neigh.default.gc_interval = 30
net.ipv4.neigh.default.gc_stale_time = 60
net.ipv4.neigh.default.locktime = 0
net.ipv4.neigh.default.mcast_solicit = 3
net.ipv4.neigh.default.proxy_qlen = 64
net.ipv4.neigh.default.retrans_time_ms = 1000
net.ipv4.neigh.default.ucast_solicit = 3
net.ipv4.route.flush = 0
net.ipv4.route.gc_elasticity = 9
net.ipv4.route.gc_interval = 30
net.ipv4.route.gc_min_interval = 0
net.ipv4.route.gc_timeout = 210
net.ipv4.route.max_size = 4096
net.ipv4.route.min_adv_mss = 536
net.ipv4.route.mtu_expires = 600
net.ipv4.tcp_abc = 0
net.ipv4.tcp_adv_win_scale = 1
net.ipv4.tcp_allowed_congestion_control = reno
net.ipv4.tcp_congestion_control = reno
net.ipv4.tcp_dsack = 1
net.ipv4.tcp_ecn = 2
net.ipv4.tcp_fack = 1
net.ipv4.tcp_fastopen = 3
net.ipv4.tcp_fin_timeout = 60
net.ipv4.tcp_frto = 2
net.ipv4.tcp_keepalive_intvl = 75
net.ipv4.tcp_keepalive_probes = 9
net.ipv4.tcp_keepalive_time = 7200
net.ipv4.tcp_low_latency = 0
net.ipv4.tcp_max_syn_backlog = 256
net.ipv4.tcp_max_tw_buckets = 180000
net.ipv4.tcp_moderate_rcvbuf = 1
net.ipv4.tcp_mtu_probing = 0
net.ipv4.tcp_no_metrics_save = 0
net.ipv4.tcp_orphan_retries = 8
net.ipv4.tcp_reordering = 3
net.ipv4.tcp_retries1 = 8
net.ipv4.tcp_retries2 = 15
net.ipv4.tcp_rfc1337 = 0
net.ipv4.tcp_rmem = 4096 212992 6291456
net.ipv4.tcp_sack = 1
net.ipv4.tcp_slow_start_after_idle = 1
net.ipv4.tcp_syn_retries = 6
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 0
net.ipv4.tcp_wmem = 4096 16384 4194304
net.ipv6.conf.all.accept_dad = 1
net.ipv6.conf.all.accept_ra = 1
net.ipv6.conf.all.accept_redirects = 1
net.ipv6.conf.all.autoconf = 1
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.all.force_mld_version = 0
net.ipv6.conf.all.hop_limit = 64
net.ipv6.conf.all.ignore_routes_with_linkdown = 0
net.ipv6.conf.all.max_addresses = 16
net.ipv6.conf.all.mldv1_unsolicited_report_interval = 1000
net.ipv6.conf.all.mldv2_unsolicited_report_interval = 100
net.ipv6.conf.all.mtu = 0
net.ipv6.conf.all.proxy_ndp = 0
net.ipv6.conf.all.regen_max_random_factor = 600
net.ipv6.conf.all.router_solicitation_delay = 1
net.ipv6.conf.all.router_solicitation_interval = 4
net.ipv6.conf.all.router_solicitations = -1
net.ipv6.conf.all.seg6_enabled = 1
net.ipv6.conf.all.seg6_require_hmac = 0
net.ipv6.conf.all.use_optimistic_dad = 0
net.ipv6.conf.all.use_tempaddr = 0
net.ipv6.conf.default.accept_dad = 1
net.ipv6.conf.default.accept_ra = 1
net.ipv6.conf.default.accept_redirects = 1
net.ipv6.conf.default.autoconf = 1
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.default.force_mld_version = 0
net.ipv6.conf.default.hop_limit = 64
net.ipv6.conf.default.ignore_routes_with_linkdown = 0
net.ipv6.conf.default.max_addresses = 16
net.ipv6.conf.default.mldv1_unsolicited_report_interval = 1000
net.ipv6.conf.default.mldv2_unsolicited_report_interval = 100
net.ipv6.conf.default.mtu = 0
net.ipv6.conf.default.proxy_ndp = 0
net.ipv6.conf.default.regen_max_random_factor = 600
net.ipv6.conf.default.router_solicitation_delay = 1
net.ipv6.conf.default.router_solicitation_interval = 4
net.ipv6.conf.default.router_solicitations = -1
net.ipv6.conf.default.seg6_enabled = 1
net.ipv6.conf.default.seg6_require_hmac = 0
net.ipv6.conf.default.use_optimistic_dad = 0
net.ipv6.conf.default.use_tempaddr = 0
net.ipv6.conf.eth0.accept_dad = 1
net.ipv6.conf.eth0.accept_ra = 1
net.ipv6.conf.eth0.accept_redirects = 1
net.ipv6.conf.eth0.autoconf = 1
net.ipv6.conf.eth0.disable_ipv6 = 0
net.ipv6.conf.eth0.force_mld_version = 0
net.ipv6.conf.eth0.hop_limit = 64
net.ipv6.conf.eth0.ignore_routes_with_linkdown = 0
net.ipv6.conf.eth0.max_addresses = 16
net.ipv6.conf.eth0.mldv1_unsolicited_report_interval = 1000
net.ipv6.conf.eth0.mldv2_unsolicited_report_interval = 100
net.ipv6.conf.eth0.mtu = 1500
net.ipv6.conf.eth0.proxy_ndp = 0
net.ipv6.conf.eth0.regen_max_random_factor = 600
net.ipv6.conf.eth0.router_solicitation_delay = 1
net.ipv6.conf.eth0.router_solicitation_interval = 4
net.ipv6.conf.eth0.router_solicitations = -1
net.ipv6.conf.eth0.seg6_enabled = 1
net.ipv6.conf.eth0.seg6_require_hmac = 0
net.ipv6.conf.eth0.use_optimistic_dad = 0
net.ipv6.conf.eth0.use_tempaddr = 0
net.ipv6.conf.lo.accept_dad = 1
net.ipv6.conf.lo.accept_ra = 1
net.ipv6.conf.lo.accept_redirects = 1
net.ipv6.conf.lo.autoconf = 1
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.lo.force_mld_version = 0
net.ipv6.conf.lo.hop_limit = 64
net.ipv6.conf.lo.ignore_routes_with_linkdown = 0
net.ipv6.conf.lo.max_addresses = 16
net.ipv6.conf.lo.mldv1_unsolicited_report_interval = 1000
net.ipv6.conf.lo.mldv2_unsolicited_report_interval = 100
net.ipv6.conf.lo.mtu = 65536
net.ipv6.conf.lo.proxy_ndp = 0
net.ipv6.conf.lo.regen_max_random_factor = 600
net.ipv6.conf.lo.router_solicitation_delay = 1
net.ipv6.conf.lo.router_solicitation_interval = 4
net.ipv6.conf.lo.router_solicitations = -1
net.ipv6.conf.lo.seg6_enabled = 1
net.ipv6.conf.lo.seg6_require_hmac = 0
net.ipv6.conf.lo.use_optimistic_dad = 0
net.ipv6.conf.lo.use_tempaddr = 0
net.netfilter.nf_conntrack_acct = 0
net.netfilter.nf_conntrack_buckets = 65536
net.netfilter.nf_conntrack_checksum = 0
net.netfilter.nf_conntrack_count = 256
net.netfilter.nf_conntrack_expect_max = 128
net.netfilter.nf_conntrack_frag6_high_thresh = 1048576
net.netfilter.nf_conntrack_frag6_low_thresh = 524288
net.netfilter.nf_conntrack_frag6_timeout = 60
net.netfilter.nf_conntrack_frag_high_thresh = 1048576
net.netfilter.nf_conntrack_frag_low_thresh = 524288
net.netfilter.nf_conntrack_frag_timeout = 60
net.netfilter.nf_conntrack_generic_timeout = 3600
net.netfilter.nf_conntrack_helper = 1
net.netfilter.nf_conntrack_icmpv6_timeout = 10
net.netfilter.nf_conntrack_icmp_timeout = 30
net.netfilter.nf_conntrack_log_invalid = 0
net.netfilter.nf_conntrack_max = 262144
net.netfilter.nf_conntrack_sctp_timeout_closed = 0
net.netfilter.nf_conntrack_sctp_timeout_cookie_echoed = 120
net.netfilter.nf_conntrack_sctp_timeout_cookie_wait = 120
net.netfilter.nf_conntrack_sctp_timeout_heartbeat_ack = 0
net.netfilter.nf_conntrack_sctp_timeout_heartbeat_sent = 30
net.netfilter.nf_conntrack_sctp_timeout_shutdown_ack_sent = 0
net.netfilter.nf_conntrack_sctp_timeout_shutdown_recd = 0
net.netfilter.nf_conntrack_sctp_timeout_shutdown_sent = 0
net.netfilter.nf_conntrack_tcp_loose = 1
net.netfilter.nf_conntrack_tcp_max_retrans = 3
net.netfilter.nf_conntrack_tcp_timeout_close = 10
net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60
net.netfilter.nf_conntrack_tcp_timeout_established = 86400
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120
net.netfilter.nf_conntrack_tcp_timeout_last_ack = 30
net.netfilter.nf_conntrack_tcp_timeout_max_retrans = 300
net.netfilter.nf_conntrack_tcp_timeout_syn_recv = 60
net.netfilter.nf_conntrack_tcp_timeout_syn_sent = 120
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120
net.unix.max_dgram_qlen = 512

Para visualizar o valor de um parâmetro específico, use o comando sysctl seguido pelo nome do parâmetro. Por exemplo, para visualizar o valor de net.ipv4.ip_forward, digite o seguinte comando e pressione Enter:

sysctl net.ipv4.ip_forward

Este comando exibirá o valor atual do parâmetro net.ipv4.ip_forward.

net.ipv4.ip_forward = 0

Para modificar um parâmetro sysctl, você pode usar a opção -w seguida pelo nome do parâmetro e o novo valor. No entanto, lembre-se de que as alterações feitas com a opção -w são temporárias e serão perdidas após uma reinicialização.

Por exemplo, para habilitar temporariamente o encaminhamento de IP (definir net.ipv4.ip_forward como 1), digite o seguinte comando e pressione Enter:

sudo sysctl -w net.ipv4.ip_forward=1

Você pode verificar se o valor foi alterado executando o comando sysctl novamente:

sysctl net.ipv4.ip_forward

A saída agora deve mostrar:

net.ipv4.ip_forward = 1

Para tornar a alteração permanente, você precisa editar o arquivo /etc/sysctl.conf ou criar um novo arquivo de configuração no diretório /etc/sysctl.d/.

Por exemplo, vamos criar um novo arquivo chamado 99-labex.conf no diretório /etc/sysctl.d/ e adicionar a configuração net.ipv4.ip_forward=1 a ele.

Primeiro, crie o arquivo usando nano:

sudo nano /etc/sysctl.d/99-labex.conf

Em seguida, adicione a seguinte linha ao arquivo:

net.ipv4.ip_forward=1

Pressione Ctrl+X, depois Y e, em seguida, Enter para salvar o arquivo.

Finalmente, aplique as alterações executando o seguinte comando:

sudo sysctl -p /etc/sysctl.d/99-labex.conf

Este comando lerá o arquivo de configuração e aplicará as configurações.

Ao usar o comando sysctl e modificar o arquivo /etc/sysctl.conf, você pode ajustar as configurações de rede do seu sistema para otimizar o desempenho e a segurança.

Resumo

Neste laboratório, exploramos como verificar as opções de socket de rede no Linux usando o comando ss. A principal conclusão é entender como usar ss -no state all para exibir informações estendidas do socket, incluindo o tamanho da janela TCP e MSS, que são cruciais para diagnosticar problemas de desempenho da rede.

O laboratório enfatizou a importância dos sockets como pontos de extremidade para a comunicação de rede e demonstrou como o comando ss fornece informações detalhadas sobre os parâmetros do socket, permitindo a solução de problemas e a otimização da rede de forma eficaz.