MacOS 에서 UDP만을 Block 하거나 대역폭을 제한해야 할때

woody.ahn·2024년 10월 17일
0
post-thumbnail

WebRTC로 뭔가를 하다보면 테스트를 위해서 signaling(TCP)은 그대로 두고 media(UDP)만 막아야 하는 경우가 왕왕 생깁니다. MacOS에서 음성/영상 패킷을 주고 받지 못하는 네트워크 상황을 만들어야 할때 pfctl 으로 가능합니다.

먼저, pfctl를 enable 시켜줍니다.

sudo pfctl -e

Block UDP

10000~65535 port로 들어오는 UDP를 block 하려면

echo "block in proto udp from any to any port 10000:65535" | sudo pfctl -f -

설정을 원래대로 바꾸려면

sudo pfctl -f /etc/pf.conf

대역폭 제한

Inbound UDP에 대해서 대역폭을 80kbit/s로 제한하려면

sudo dnctl pipe 1 config bw 80Kbit/s
echo "dummynet in proto udp pipe 1" | sudo pfctl -f -

설정을 원래대로 바꾸려면

sudo dnctl -q flush
sudo pfctl -f /etc/pf.conf
profile
developer

0개의 댓글