mudfish-exclude 사용자 안내서
mudfish-exclude 프로그램은 미꾸라지 Cloud VPN v6.5.4 혹은 그 이상부터 지원됩니다.
mudfish-exclude는 Linux에서 지정한 프로그램을 미꾸라지 라우팅 정책 밖으로
실행하는 도구입니다.
미꾸라지는 계속 실행하되, 브라우저, 메신저, 게임 런처, 업데이트 프로그램 같은 특정 프로그램만 일반 인터넷 경로를 사용하게 하고 싶을 때 사용합니다.
지원 환경
mudfish-exclude는 Linux 전용입니다.
시스템에 다음 항목이 필요합니다.
- Linux용 미꾸라지
sudo또는 root 권한/sys/fs/cgroup에 마운트된 cgroup v2ip명령iptables- IPv4 기본 라우트
이 도구는 IPv4 트래픽을 대상으로 동작합니다. IPv6 트래픽은
mudfish-exclude로 우회 처리되지 않습니다.
기본 사용법
프로그램 앞에 mudfish-exclude를 붙여 실행합니다.
sudo mudfish-exclude firefox
프로그램 인자는 프로그램 이름 뒤에 그대로 붙이면 됩니다.
sudo mudfish-exclude firefox --private-window
sudo mudfish-exclude curl https://mudfish.net
명령 인자가 많거나 구분을 명확히 하고 싶다면 -- 뒤에 실행할 프로그램을
적습니다.
sudo mudfish-exclude -- firefox --private-window
sudo로 실행하더라도 실제로 실행되는 프로그램은 일반적으로 현재 사용자 권한으로
되돌아갑니다. 그래서 GUI 프로그램이 root 설정이 아니라 평소 사용하는 홈
디렉터리, 데스크톱 세션, 설정 파일을 사용할 수 있습니다.
실행 중 동작
명령을 시작하면 mudfish-exclude는 해당 명령에만 적용되는 임시 네트워크
정책을 만듭니다. 해당 명령에서 발생한 트래픽은 표시된 뒤 시스템의 일반 IPv4
기본 라우트로 나갑니다.
명령이 종료되면 관련 프로세스 그룹이 비워질 때까지 기다린 다음 임시 규칙을 제거합니다.
미꾸라지 자체가 꺼지는 것은 아닙니다. 다른 프로그램은 기존 미꾸라지 설정에 따라 계속 동작합니다.
사용 예
Firefox를 미꾸라지 밖으로 실행:
sudo mudfish-exclude firefox
Discord를 미꾸라지 밖으로 실행:
sudo mudfish-exclude discord
Steam을 미꾸라지 밖으로 실행:
sudo mudfish-exclude steam
명령줄 다운로드를 미꾸라지 밖으로 실행:
sudo mudfish-exclude wget https://example.com/file.zip
수동 설정과 정리
일반적인 사용에서는 필요하지 않습니다. mudfish-exclude가 정책을 자동으로
설정하고 정리합니다.
정책을 한 번 만들어 둔 뒤 여러 프로그램을 같은 정책으로 실행해야 한다면 다음과 같이 사용할 수 있습니다.
sudo mudfish-exclude --setup
sudo mudfish-exclude --no-setup firefox
sudo mudfish-exclude --no-setup discord
sudo mudfish-exclude --cleanup
수동 설정 모드를 사용한 뒤에는 반드시 --cleanup을 실행해 정리하세요.
고급 옵션
대부분의 사용자는 기본값을 그대로 사용하면 됩니다.
| 옵션 | 용도 | 기본값 |
|---|---|---|
--cgroup NAME | 제외할 프로그램에 사용할 cgroup v2 이름 | mudfish-exclude |
--mark VALUE | 방화벽 mark 값 | 0x6d660001 |
--priority VALUE | IPv4 rule 우선순위 | 8252 |
--table VALUE | IPv4 라우팅 테이블 번호 | 8252 |
--setup | 정 책을 만들고 종료 | 꺼짐 |
--cleanup | 정책을 제거하고 종료 | 꺼짐 |
--no-setup | 이미 만들어진 정책에 들어가 명령 실행 | 꺼짐 |
기본 mark, 우선순위, 테이블 값이 다른 네트워크 도구와 충돌하거나 미꾸라지 지원팀의 안내를 받은 경우에만 변경하세요.
예:
sudo mudfish-exclude --table 9000 --priority 9000 firefox
GUI 프로그램 사용 시 주의사항
일부 데스크톱 프로그램은 이미 실행 중인 프로세스를 재사용합니다. 예를 들어
브라우저가 이미 열려 있으면 sudo mudfish-exclude firefox를 실행해도 기존
브라우저에 새 창만 요청할 수 있습니다. 이 경우 기존 브라우저 프로세스는 제외
대상이 아닐 수 있습니다.
권장 방법:
- 프로그램을 완전히 종료한 뒤
mudfish-exclude로 다시 실행하세요. - 브라우저에서 미꾸라지 경로와 제외 경로를 동시에 써야 한다면 별도 프로필을 사용하세요.
- 데스크톱 바로가기만 실행하지 말고 실제 프로그램 명령을 실행하세요.
문제 해결
network policy setup requires root
sudo를 붙여 실행하세요.
sudo mudfish-exclude firefox
cgroup v2 is required at /sys/fs/cgroup
Linux 시스템이 예상 위치에서 cgroup v2를 사용하고 있지 않습니다. cgroup v2를 사용하도록 시스템 설정을 변경하거나, cgroup v2를 기본 제공하는 Linux 배포판에서 사용하세요.
failed to find the IPv4 default route
시스템에 사용할 수 있는 IPv4 기본 라우트가 없습니다. 먼저 일반 인터넷 연결이 정상인지 확인하세요.
앱이 여전히 미꾸라지를 사용하는 것처럼 보이는 경우
앱을 완전히 종료한 뒤 mudfish-exclude를 통해 다시 실행하세요. 브라우저, 게임
런처, 메신저처럼 백그라운드 프로세스를 유지 하는 프로그램에서 특히 중요합니다.
비정상 종료 후 네트워크 규칙이 남아 있는 경우
수동으로 정리하세요.
sudo mudfish-exclude --cleanup
--mark, --priority, --table, --cgroup 값을 직접 바꿔 사용했다면
--cleanup에도 같은 값을 지정해야 합니다.
빠른 명령 요약
sudo mudfish-exclude COMMAND [ARGS...]
sudo mudfish-exclude --setup
sudo mudfish-exclude --no-setup COMMAND [ARGS...]
sudo mudfish-exclude --cleanup