사용자 대역폭 사용을 제한하는 쉬운 방법이 있습니까?


14

사용자 대역폭 사용량을 10kpbs로 제한하는 쉬운 방법이 있습니까? 다른 사용자는 영향을받지 않아야합니다. 내가 찾은 최고는 tc이지만 그렇게 간단한 일을하기에는 너무 복잡해 보입니다.


주어진 답변으로 문제가 해결되면 (그렇기를 바랍니다.) 승인 된 것으로 선택하여이 문제가 해결 된 것으로 표시 될 수 있도록하십시오.
heemayl

답변:


8

tc는 구성 요구에 대한 정답입니다.
tc는 클래스 전체 (이하) 큐잉 제자를 관리하기 때문에 복잡해 보일 수 있습니다.
그러나 이것은 사실이 아닙니다. tc는 커널에서 빌트인 (또는 모듈 식) 큐잉 큐를 사용하므로 사용자별로 대역폭을 제한하는 가장 단순하고 최상의 방법입니다.
다음은 샘플 설정입니다. Mbit 형식으로 남겨 두었지만 속도 측정 값을 kbps로 변경할 수 있습니다.

tc qdisc add dev eth0 root handle 1:0 htb
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 1Mbit ceil 1Mbit prio 1

iptables 규칙의 경우 --uid-owner를 제한하려는 사용자의 uid로 변경하십시오. 문서에 따르면 UID 대신 사용자 이름을 사용할 수 있으며 테스트하지 않았습니다.

iptables -t mangle -A POSTROUTING -o eth0 -p tcp -m owner --uid-owner 1000 -j CLASSIFY --set-class 1:1

참고로 HTB가 필요하지 않더라도 사용 가능한 옵션과 제한 속도에 따라 HTB를 권장합니다.

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