TL; DR
Bộ định tuyến / tường lửa CentOS6 NAT đằng sau kết nối modem cáp 120Mbps dường như được giới hạn thông lượng ở mức 30Mbps sau khi cập nhật gần đây và "cứng hóa" bảo mật.
Trước khi cập nhật và làm cứng tôi đã nhận được 90Mb / giây.
Tôi đã kiểm tra việc sử dụng CPU và mạng và cả hai điều này dường như không phải là yếu tố hạn chế. tc
không hiển thị bất kỳ hình dạng lưu lượng truy cập đang diễn ra và tôi không biết làm thế nào để khắc phục sự cố này hơn nữa.
Chi tiết
Tôi có một hệ thống CentOS 6 đang chạy như một bộ định tuyến / tường lửa NAT phía sau modem cáp Comcast, cũng đang chạy như một bộ định tuyến NAT
1000 100
eth1 eth0
Internet-------Modem-------------CentOS6-----------------LAN
10.0.0.0/24 192.168.10.0/24
NAT kép là một di sản từ hệ thống CentOS trước đây được dùng làm bộ định tuyến / tường lửa đằng sau modem cáp Time-Warner chạy ở chế độ cầu. Khi tôi chuyển sang lãnh thổ Comcast, tôi dự định chuyển modem sang chế độ cầu nhưng không bao giờ có được nó và NAT kép không bao giờ gây ra sự cố. Tôi đã nhận được thông lượng 90Mbps mà không có vấn đề.
Khi chuẩn bị chuyển đổi sang chế độ bắc cầu trên modem Comcast, tôi quyết định "làm cứng" hệ thống CentOS bằng cách vô hiệu hóa một số dịch vụ không cần thiết và thực hiện "cập nhật yum", điều mà tôi đã không thực hiện trong một thời gian. Sau khi làm cứng tôi đã thực hiện một bài kiểm tra tốc độ và rất ngạc nhiên khi thấy thông lượng xuống tới 30Mb / giây.
Tôi đã thử kết nối trực tiếp hệ thống máy tính để bàn chính của mình với modem như thế này
eth1 eth0
Internet---Modem-------------CentOS6-----------------LAN
| 10.0.0.0/24 192.168.10.0/24
|
+--------------Desktop(Win7)
Chạy speedtest.net đã xác minh rằng kết nối Comcast của tôi có khả năng 120Mbps, do đó, một cái gì đó tôi đã thay đổi trên hệ thống CentOS đã dẫn đến giới hạn thông lượng ở mức 30Mbps. Mỗi lần tôi thực hiện kiểm tra tốc độ từ mạng LAN (đằng sau hệ thống CentOS), tôi nhận được một giá trị trong vòng 1-2% của 30Mb / giây, do đó, hầu như cảm giác như có gì đó bị giới hạn một cách giả tạo.
Tôi nghĩ có lẽ hình dạng giao thông đã được kích hoạt bằng cách nào đó, nhưng tc
dường như cho thấy nó không hoạt động
[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
"Làm cứng" bao gồm
- loại bỏ một số gói không cần thiết
- đóng cửa các dịch vụ không cần thiết
- thiết lập iptables để lọc tất cả lưu lượng truy cập ngoại trừ một cổng không chuẩn cho ssh
- cài đặt và cấu hình tripwire
Các gói đã xóa:
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
Các dịch vụ hiện được kích hoạt:
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
Câu hỏi của tôi là: Tôi nên làm gì tiếp theo để tìm hiểu lý do tại sao bộ định tuyến CentOS 6 của tôi dường như bị giới hạn thông lượng ở mức 30Mb / giây?