TL; DR
O roteador / firewall NAT CentOS6 atrás de uma conexão de modem a cabo de 120 Mbps parece estar limitando a taxa de transferência a 30 Mbps após atualizações recentes e "fortalecimento" da segurança.
Antes das atualizações e do reforço, eu estava recebendo 90 Mbps.
Eu verifiquei o uso da CPU e da rede e nenhum deles parece ser um fator limitante. tc
não mostra nenhuma forma de tráfego acontecendo e não sei mais como solucionar isso.
Detalhes
Eu tenho um sistema CentOS 6 executando como roteador / firewall NAT atrás de um modem a cabo Comcast, que também está sendo executado como roteador NAT
1000 100
eth1 eth0
Internet-------Modem-------------CentOS6-----------------LAN
10.0.0.0/24 192.168.10.0/24
O NAT duplo é um legado do sistema CentOS, que anteriormente servia como roteador / firewall atrás de um modem a cabo Time-Warner que era executado no modo bridge. Quando mudei para o território da Comcast, pretendia mudar o modem para o modo bridge, mas nunca cheguei a ele, e o NAT duplo nunca causou um problema. Eu estava obtendo uma taxa de transferência de 90 Mbps sem problemas.
Ao preparar a conversão para o modo de ponte no modem Comcast, decidi "proteger" o sistema CentOS desativando alguns serviços desnecessários e fazendo a "atualização yum", o que não fazia há algum tempo. Após o endurecimento, fiz um teste de velocidade e fiquei surpreso ao encontrar uma taxa de transferência de até 30 Mbps.
Tentei conectar meu sistema de desktop principal diretamente ao modem como este
eth1 eth0
Internet---Modem-------------CentOS6-----------------LAN
| 10.0.0.0/24 192.168.10.0/24
|
+--------------Desktop(Win7)
A execução do speedtest.net verificou que minha conexão Comcast é capaz de 120 Mbps, então algo que eu mudei no sistema CentOS resultou em limitar a taxa de transferência a 30 Mbps. Toda vez que faço um teste de velocidade na LAN (atrás do sistema CentOS), obtenho um valor entre 1-2% e 30 Mbps, então parece que algo está limitando artificialmente a taxa de transferência.
Eu pensei que talvez a modelagem de tráfego tenha sido ativada de alguma forma, mas tc
parece indicar que não está ativa
[jhg@perseus ~]$ sudo tc -s qdisc
qdisc pfifo_fast 0: dev eth0 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 64159459406 bytes 44745482 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
qdisc pfifo_fast 0: dev eth1 root refcnt 2 bands 3 priomap 1 2 2 2 1 2 0 0 1 1 1 1 1 1 1 1
Sent 2871293442 bytes 26151570 pkt (dropped 0, overlimits 0 requeues 0)
rate 0bit 0pps backlog 0b 0p requeues 0
O "endurecimento" consistiu em
- removendo alguns pacotes desnecessários
- desligando serviços desnecessários
- configurando o iptables para filtrar todo o tráfego recebido, exceto uma porta não padrão para ssh
- instalando e configurando tripwire
Pacotes removidos:
redis dovecot
redhat-lsb-compat ipa-client
redhat-lsb nfs-utils-lib
redhat-lsb-printing nfs-utils
foomatic subversion
foomatic-db spamassassin
foomatic-db-ppds certmonger
cups yp-tools
mysql-server ypbind
mysql rpcbind
Serviços atualmente ativados:
abrt-ccpp cpuspeed kdump nmb
abrt-oops crond lvm2-monitor ntpd
abrtd dhcpd mcelogd postfix
acpid dkms_autoinstaller mdmonitor rsyslog
atd haldaemon messagebus smb
auditd ip6tables named sshd
autofs iptables netfs sysstat
blk-availability irqbalance network udev-post
Minha pergunta é: O que devo fazer a seguir para descobrir por que meu roteador CentOS 6 parece limitar artificialmente a taxa de transferência a 30 Mbps?