네트워크 대역폭을 제한하는 방법?


74

원격 서버에서 응용 프로그램을 호스팅하고 있습니다. 제한된 인터넷 대역폭으로 테스트해야합니다 (인터넷 액세스가 나쁜 사용자의 경우).

인터넷 대역폭을 제한 할 수 있습니까? 예를 들어, 초당 128KB입니다.

답변:


67

http://linux.die.net/man/8/tc에있는tc Man page 라는 명령을 사용하여 인터페이스의 네트워크 대역폭을 조절할 수 있습니다.

간단한 스크립트를 원하면 wondershaper를 시도하십시오 .

tc를 사용하는 예 : tc qdisc add dev eth0 root tbf rate 1024kbit latency 50ms burst 1540


6
나를위한 사용자 이름 / 암호 인증을 위해 atmail.com 프롬프트로 링크 ... :(
Ash

1
: 당신은 여기에 atmail 콘텐츠를 얻을 수 있습니다 web.archive.org/web/20130719031908/http://atmail.com/kb/2009/...
톰 Saleeba

busybox 라우터를 사용하려는 경우 더 나은 방법은 tc명령입니다. mark.koli.ch/… openvz 위키에 더 많은 예제가 있습니다 openvz.org/Traffic_shaping_with_tc
nwgat

iptables로 대역폭을 제한하는 것도 가능합니다 (필요한 경우 답변을 편집 할 수 있음) : serverfault.com/questions/52027/…
baptx

62

이전 답변에서 언급했듯이 wondershaper는 작업을 쉽게 수행합니다. Jwalanta Shrestha의 위 링크 정보를 포함합니다

apt-get install wondershaper

wondershaper- 특정 인터페이스의 대역폭을 제한하는 쉬운 도구입니다.

$ sudo wondershaper {interface} {down} {up}

{down} 및 {up}은 kpbs의 대역폭입니다.

예를 들어 인터페이스 eth1의 대역폭을 256kbps 다운 링크 및 128kbps 업 링크로 제한하려는 경우,

$ sudo wondershaper eth1 256 128

한도를 지우려면

$ sudo wondershaper clear eth1 

2
이상적으로는 새로운 답변을 추가하는 대신 원래 답변을 편집했을 것입니다. 이것이 표준 정책입니다. 어쨌든, 답변에 +1이 있습니다. 답변에 정보를 추가하기 때문입니다.
shivams 2016 년

2
이것은 모바일 데이터를 테 더링하고 공정한 사용 제한이있는 경우 매우 유용합니다 (그리고 Lycamobile의 경우 새 번들을 구입해야 함). YouTube와 같은 비디오 스트리밍 웹 사이트에서 충분한 대역폭이 있으면 전체 비디오가 직접로드됩니다. 대역폭을 제한하면 비디오가 자동으로 저해상도로 전환되어보고있는 것만 다운로드하므로 모든 것을보고 싶지 않은 경우 데이터가 저장됩니다.
baptx

2
대역폭을 제한 할뿐만 아니라 트래픽을 우선시하기 때문에 큰 파일을 업로드 할 때도 유용합니다. 따라서 10gb 파일을 업로드 할 때 여전히 SSH를 사용할 수 있습니다.
PeterM


10

일부 기준에 따라 네트워크 리소스를 제한하는 것은 QoS 의 주제입니다 . Linux 시스템에서 사용자 트래픽을 제어하는 ​​방법에는 여러 가지가 있습니다.

이 좋은 방법에 대한 고급 라우팅 기술과 트래픽 제어 버트 허버트에 의해 리눅스에.


2
특정 섹션을 언급 했습니까?
rogerdpack

1
시스템 설정을 변경하지 않으려면 squid3 프록시를 설치 한 다음 프록시를 통해 "제한된"응용 프로그램을 설정하십시오. CLI 애플 리케이션의 당신이 torsocks 또는 proxychains, 당신은 또한 피들러 모노를 설치할 수 있습니다 무거운 GUI 응용 프로그램의 위해를 설정할 수 있습니다를 들어, 그래서 그래 ... a는 모든 것을 제어하는 몇 가지 방법 :가
erm3nda

(이 링크 유일한 해답입니다)
콘라드 Gajewski

7

이미 어딘가에 Apache 설정이있는 경우 mod_bw프록시 연결에서도 작동하는을 사용할 수 있습니다 (예 : Apache는 모든 것을 적절한 서버로 전달하지만 응답 속도는 느려집니다).



6

iptables hashlimit 모듈을 사용할 수도 있습니다. 다음은 간단한 예입니다.

iptables -A FORWARD -m hashlimit --hashlimit-512kb / sec 이상 --hashlimit-burst 1mb --hashlimit-mode srcip, dstip --hashlimit-name bwlimit -j DROP

이 규칙은 FORWARD 체인을 통과하는 트래픽을 각 소스 및 대상 쌍에 대해 1mb 버스트와 함께 512kb / sec로 제한합니다.

자세한 내용은 iptables 매뉴얼의 hashlimit 섹션을 확인하십시오.

http://ipset.netfilter.org/iptables-extensions.man.html

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.