맥(macOS) HTTPS SNI 차단 우회 방법

Mac

윈도우 같은 경우 MTU(maximum transmission unit)을 기본값인 1500에서 400으로 줄여 패킷을 더 잘게 쪼개서 정부에서 시행중인 SNI 검열을 우회 하는 방법에 대해 이전 글에서 공유한 적이 있는데, 맥(macOS) 같은 경우도 같은 요령으로 우회가 가능합니다.

이전 페이지를 안본 방문자를 위해서 간단하게 설명하자면, 정부에서 현재 사용하는 검열 방식은 HTTPS로 서버와 접속자간에 통신은 암호화가 되지만 인증 과정에서 발생하는 패킷안의  SNI(Server Name Indication) 필드는 암호화 되지 않기 때문에 인터넷 검열이 가능한 것입니다.

MTU 값을 줄였을때 원리 예시

  • extrememanual.net = mtu 1500
  • extreme manual.net = mtu 400

간단하게 설명하자면, MTU 값을 줄이면 위처럼 SNI 필드 또한 나뉘는데 검열하는 서버가 해당 필드를 붙이지 않는 단순한 방식이기 때문에 가능한 방법입니다.

이 방식이 공개되기 전엔 SNI 필드가 암호화 되지 않기 때문에 암호화(ESNI)를 지원하는 파이어폭스와 클라우드플레어의 1.1.1.1이 잠깐 흥했지만 이 방법도 되는 사람과 안되는 사람이 나뉘었는데, 이 방법은 브라우저를 가리지 않으며 설정하기 아주 쉽습니다.

macOS MTU 변경하기

Macos Sni Filter Bypass Mtu 01

런치패드 또는 독에 있는 터미널 아이콘을 클릭해 터미널을 실행합니다.

Macos Sni Filter Bypass Mtu 02

터미널에서 ①ifconfig 명령어를 실행하면 네트워크 어댑터 목록이 여러개 보입니다.

맥 같은 경우 와이파이와 썬더볼트 네트워크 브릿지, 유선NIC등 여러 장치가 달려 있어 장치가 많이 보이는데 ②여기서 IP가 할당된 어댑터를 찾아봅니다.

보통 en0 아니면 en1인데 맥북 같은 경우 유선 어댑터가 없기 때문에 대부분 ③en0일 것입니다.

④해당 어댑터의 정보를 보면 MTU가 1500으로 되어 있습니다.

Macos Sni Filter Bypass Mtu 03

sudo ifconfig en0 mtu 400 을 입력하면 MTU 값을 변경할 수 있습니다. 물론 en0에 해당하는 어댑터 이름은 자신의 맥에서 확인한 이름으로 입력해야겠죠?

위 명령어는 최고 권한을 요구하기 때문에 관리자 암호를 입력해야 합니다.

크롬, 파이어폭스 같은 경우 MTU 값을 400으로 변경하면 문제 없고, 사파리를 주로 사용한다면 MTU 값을 200으로 입력해야 정상적으로 우회됩니다.

Macos Sni Filter Bypass Mtu 04

원상태로 되돌리고 싶다면 마찬가지 요령으로 sudo ifconfig en0 mtu 1500을 입력하면 되겠습니다.

윈도우 같은 경우 배치 파일로 만들어 실행하기가 수월한데 macOS 같은 경우 sh로 스크립트를 만들어도 터미널에서 실행해야 하는데 어짜피 명령어 타이핑 수가 비슷하기 때문에 편의성이 떨어지므로 직접 입력해 사용하는 것을 추천합니다.

재부팅 후 MTU 값이 초기화 되는 점 참고하세요.

10 댓글. Leave new

  • 감사합니다.

    응답
  • 이 글을 보기 전에 하이 시에라에서 1280미만으로 설정하려 하면 에러뿜는데 모하비로 업그레이드 후에는 한방에 되네요. 뭐가 잘못된거였는지…

    응답
  • 잘 작동하네요..! 그저 한 줄기 빛… ㅜㅠ 감사합니다!!!

    응답
  • 우와.. 한방에 되네요 감사합니다.
    제 맥은 high sierra 입니다.

    응답
  • 재부팅 안해도 한번에 되네요 와. 암이 나았습니다 감사합니다.

    응답
  • 한방에 해결 정말 감사합니다

    응답
  • 알려주셔서 너무 감사합니다 ㅠㅠ 사랑해요

    응답
  • 안되네요

    응답
  • 여기는 라즈베리파이4B 2GB Pi OS 당근32비트 무려mtu 150까지 들가더군요 시작하기전에앞서 유선이구요 Wifi BT다껐읍니다. 정확히는 190부터 들가지만 안되는 사이트가 워낙많아서 150는 되야 들가질정도구 그나마두 중간도 못가고 로딩포기해부리네요 구글검색결과로 나오는 어려운 명령어 필요없이 저 위의 sudo ifconfig eth0 mtu *** 이거 딱한줄만치세요 Ping 5->4ms빠른거같지만 실상는 30초면 진짜 초광속이고 60초 넘어가면 양반인거구 보통 로딩 중간도 못가고 포기해부리는게 태반 엑박작렬 막F5연타신공함 되긴하지만 진짜 이게 사람할짓인가 자괴감들고 괴롭더군요. 속도는 D92/98U나오는 헬쥐U쁠 D60/80U 그럼 이정도면 혜자아니냐 하시는분들 계실텐데 실제로는 60절대못뽑읍니다

    응답

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Fill out this field
Fill out this field
유효한 이메일 주소를 입력해주세요.