가정용 공유기의 甲 FritzBox 소개

독일은 1981년 헬무트 슈미트 총리 집권 시기에 향후 30년간 전 (서독) 국토에 광 케이블을 설치하려고 계획했으나, 후임인 헬무트 콜 총리 당시 예산을 아낀다는 핑계를 대고 광 케이블 설치 계획을 취소하고 케이블 TV로 바꿔 버리는 바람에 지금도 유럽에서 FTTx 보급률이 낮은 편이고 닳고 닳은 전화선과 케이블 인터넷을 어떻게든 우려먹고 있다. VDSL Vectoring으로 250 Mbps를 뽑아내는 똥꼬쑈! 그래서 독일에 도착해서 인터넷을 신청하려고 하면 DSL이냐 케이블이냐 둘 중 하나가 대부분이고, FTTH는 들어온다면 로또를 맞았다고 생각하면 된다. 유선 인터넷 회사에서는 보통 DSL/케이블 모뎀+Wi-Fi 라우터 기능을 하는 장비를 (대여해) 주거나 사용자가 직접 모뎀을 설치할 수 있다. 비록 통신사 쪽에서는 좋아하지 않는 눈치긴 하지만 2016년 8월 1일에 법제화되었다(키워드: Routerfreiheit/Routerzwang). 한국에서 ipTIME 같은 걸 들고 왔다고 해도 그대로 쓸 수 없고 쓸 필요도 없는 게 이것 때문이다. 인터넷이 들어오는 방식이 다르기 때문.

내가 독일에 처음 왔을 때에는 DSL 모뎀+OpenWRT 설치가 가능한 Wi-Fi 공유기를 생각하고 있었으나 이걸 하고 싶어도 방법이 거의 없었다. DSL 모뎀만 따로 사려고 하니까 잘 찾지를 않는 건지 오프라인상으로는 구하기도 어려웠고, 그렇다고 통신사에서 제공하는 공유기를 쓰고 싶지는 않아서 2015년 당시의 DSL 최신 기종인 FritzBox 7490(출시는 2013년)을 사 버렸다. (협찬받은 거 그런 거 없음)

FritzBox 7490
FritzBox 7490

나중에 알게 된 사실이긴 하지만, Ubiquity나 MikroTik 같은 기업용 딱지 붙은 거 빼고 가정용 딱지 붙은 것 중에서는 순정 소프트웨어 상태가 최고라고 할 수 있다. 기본 제공하는 기능이 단순히 DSL 모뎀+Wi-Fi뿐만 아니라 VoIP 게이트웨이(DECT, ISDN/POTS, SIP 전화 붙이기 가능), 간이 NAS(USB 저장 장치 연결 필요), IPSec VPN, DNS over TLS 등 하이엔드 공유기 라인업에서나 볼 수 있는 것들이 기본 내장되어 있다. 집에 설치해 둔 필립스 Hue 스마트 전구를 Home Assistant와 ZigBee 모듈을 사용해서 별도의 Hue 브리지 없이 사용하고 있는데, 일부러 스마트 홈을 인트라넷에 가둬 뒀기 때문에 접속하려면 VPN을 타고 가야만 하도록 만들어 놨다. USB 포트에 LTE 모뎀을 연결하면 DSL이나 케이블이 죽었을 때 자동으로 LTE로 전환하는 기능도 있고, 인터넷 이전이나 신규 설치가 꽤 오래 걸리는 독일 특성상 이걸 잘 써먹기도 했다. DECT 베이스 스테이션 기능을 사용해서 VoIP 서비스를 무선 전화기로 곧바로 사용할 수도 있다. 이미 독일에서는 2020년 Deutsche Telekom이 ISDN 공중 전화망을 다 걷어내 버려서 집전화가 거의 VoIP 기반으로 굴러 가고 있다는 점도 감안해야겠지만.

WPA3 지원
WPA3 지원
IPSec VPN 지원
IPSec VPN 지원
DECT 베이스 스테이션 지원
DECT 베이스 스테이션 지원

단순히 기능뿐만 아니라 보안에도 신경을 많이 쓰고 있다. 칩셋 벤더의 역량에 따라 다르긴 하지만 주어진 한계 내에서는 리눅스 커널 버전을 잘 따라가고 있다. FritzBox 7490이 출시 당시에는 리눅스 커널 2.6.36을 사용했지만 지금은 3.10/4.4(Wi-Fi 서브시스템)까지 올라가 있다. 심지어 GPL 아카이브에는 가정용 공유기에서는 쉽게 찾아보기 힘든 AppArmor까지 적용해 둔 걸 확인할 수도 있다. 그리고 출시된 지 7년이 지난 모델에 WPA3 암호화를 제공해 주는 것도 포인트. 외부에서 라우터 설정 페이지에 접근할 때 DDNS 도메인으로 Let’s Encrypt 인증서를 찍는 것도 다른 공유기에서는 찾아보기 힘든 기능 중 하나다. AVM 홈페이지에서는 구형 모델의 기술 지원 중단 날짜를 아예 게시해 두었고, GPL을 준수하는 방법을 한동안 하던 국내 회사와는 다르게 펌웨어 버전별로 오픈소스 소스 코드를 잘 공개하고 있다. 몇 술 더 떠서 펌웨어 업데이트에서 보안 업데이트 내역만 따로 뽑아서 고지하거나, 각종 보안 문제에 어떻게 영향을 받는지를 별도로 공지하는 회사? 얼마나 있나? 2016년에 케이블 모뎀에 들어가는 DOCSIS CA 인증서 배포 문제 때문에 CA 인증서를 한 번 갈아엎은 적도 있었지만 이것도 보안 공지에 명시되어 있다.

MyFritz: Let's Encrypt 인증서를 찍어 주는 기능 기본 내장
MyFritz: Let’s Encrypt 인증서를 찍어 주는 기능 기본 내장

대신 이렇게 순정 펌웨어에 기능이 상당히 많이 들어가 있다 보니 도리어 OpenWRT를 올리기는 까다로운 편에 속하고 올리려는 시도도 적은 편이다. 실제로 OpenWRT 위키에 있는 AVM 장치도 대부분 지원이 중단된 모델 위주고, 현역이라고 할 수 있는 모델은 하드웨어 구조가 상대적으로 간단한 FritzBox 4020, 4040, 7530 정도이다(DSL은 OpenWRT에서 미지원). 지금 쓰고 있는 7490도 하드웨어 구조가 특이한 편에 속한데, 메인+DSL SoC로 Lantiq VRX288을 사용하는 것 자체는 평범하다. 그러나 Wi-Fi 칩셋으로 Lantiq WAV 시리즈를 사용하는 게 아니라 그 자체로도 공유기를 만들 수 있는 QCA9558+PCIe로 연결되는 QCA9880을 사용하고 있다. 한 술 더 떠서 USB 3.0 포트 두 개는 SoC가 아니라 PCIe로 연결해 둔 uPD720202 칩셋으로 돌아간다. 최신형 802.11ax 지원 6660 Cable은 그나마 구조가 정상적인 인텔 Puma 7+MaxLinear DOCSIS 프론트엔드+WAV600 구성이긴 하지만.

AVM의 주요 시장이 독일을 비롯한 유럽이고, 주력 모델이 DSL/케이블 내장형이라서 한국에서 사용하기에는 불필요하게 가격을 상승시키는 원인일 뿐이라서 이걸 공유기로 쓰려고 한국에서 굳이 구해다 쓰는 사람은 아직까지는 많이 보지 못한 것 같다. 심지어 Home Assistant 한국어 번역 프로젝트에서는 이걸 “독일통신사“로 착각하기도 했다. 7490 독일판도 한동안은 펌웨어 언어가 독일어만 지원했고 영어를 비롯한 타 언어 지원은 7.21 들어서야 추가되었다. 한국에서 이걸 쓴다면 기능을 100% 다 살릴 수는 없지만 방법이 아주 없는 것은 아니다.

독일에서 주력으로 팔리고 있는 모델은 DSL 모델과 케이블 모델이고, 유선 통신사에서 주는 모뎀+공유기도 대부분 DSL/케이블+Wi-Fi 내장형이기 때문에 한국산 공유기처럼 이더넷 포트만 달려 있는 모델은 주력 제품이 아니다. LTE 지원 모델 중 6890은 DSL+LTE, 6850과 6820은 LTE만 지원한다. 독일에는 FTTH가 되는 집은 로또 당첨이기 때문에 광 케이블 모델이 있기는 하지만(5490, 5491) 이건 일반 시장용으로는 풀지 않았고 ISP에 OEM으로만 들어갔다. 4040과 4020은 한국 공유기와 비슷하게 이더넷만 사용하지만 독일 유선 인터넷에 모뎀 단독으로 쓰는 환경은 거의 없기 때문에 이것도 주력 제품과는 거리가 있다.

그래서 한국에서 FritzBox를 사용하고 싶다면 차라리 DSL 모델이 가격 할인할 때 사는 것이 지원 받기에 그나마 나은 옵션이다. 독일 내에서 주력 상품이라서 펌웨어 업데이트도 잘 되고 있고, 내장 DSL 모뎀은 비활성화해 두고 기존 인터넷과 연결해서 사용하는 것도 가능하기 때문이다. 대신 이 경우 LAN 포트 하나를 희생해야 하지만. 결정적으로 DSL 모델은 리눅스 셸에 접근할 수 있지만 케이블 모델은 DOCSIS 보안 문제 때문에 셸 접근이 일반적으로는 막혀 있다.

FritzBox의 DSL 모뎀을 비활성화하고 공유기처럼 쓰기
FritzBox의 DSL 모뎀을 비활성화하고 공유기처럼 쓰기

만약 한국에서 DSL 모뎀으로 사용해야 한다면 Annex 설정에 주의해야 한다. 독일은 공중 전화망으로 ISDN을 활발하게 사용한 나라인데, ISDN은 아날로그 집전화보다 대역을 더 넓게 사용했다. 그래서 ADSL/VDSL을 도입할 때에도 ISDN 주파수 대역을 피해야 했기 때문에 업링크 주파수 대역이 다른 나라보다 고주파에서 시작한다. 아래 그림과 같이 주파수 대역을 Annex A, Annex B와 같이 구별한다. 독일은 Annex B를 사용하고 있고 나머지는 대부분 Annex A를 사용하고 있다. Annex 변경은 대부분 기종이 지원하기는 하지만 구형 독일판 모델은 Annex B에 고정되어 있을 수도 있으니 이걸 조심해야 한다. 그리고 PPP 인증 정보도 옮겨 심어야 하는데 기존 모뎀에서 복사하거나 통신사에 문의하는 방법밖에는 없다.

ADSL Annex Overview by Cvdr, Licensed under Creative Commons Attribution-Share Alike 3.0 Unported.

반면 케이블 모뎀의 경우 골때리는 문제가 몇 가지 있다. DOCSIS 3.0까지는 미국식 DOCSIS와 유럽식 EuroDOCSIS가 나뉘어 있고, FritzBox가 공식적으로 지원하는 것은 EuroDOCSIS이다. 둘 사이의 가장 큰 차이점은 다운링크 채널 대역폭이 DOCSIS는 6 MHz, EuroDOCSIS는 8 MHz이다. 이외에도 주파수 특성이 다른 것이 있지만 자세한 기술적인 정보는 생략. NTSC와 PAL 시절 채널 대역폭이 달랐던 것이 케이블 방송에도 그대로 적용되었고 이게 DOCSIS까지 타고 올라온 것이기 때문이다. DOCSIS 3.1 지원 모델은 글 쓰는 시점에서는 6660 Cable이 유일하다. EuroDOCSIS 3.0만 지원하는 모델이라면 한국 DOCSIS 망 신호를 잡지 못할 수도 있다. 여기에 더해서 DOCSIS 가입자 인증 문제가 있다. DOCSIS 인증은 케이블 모뎀의 MAC 주소와 장치별 인증서로 돌아가는데, MAC 주소와 장치별 인증서는 항상 1:1로 대응된다. 이론적으로는 통신사 고객센터에 MAC 주소를 불러 주고 이걸로 바꿔 달라고 할 수도 있지만, 기존 케이블 모뎀의 인증서와 MAC 주소를 복제하는 방법도 있다. 자세한 기술적인 방법은 케이블 모뎀마다 다르므로 생략. AVM의 기존 모델이 대부분 EuroDOCSIS 기반이고 미국에서 주력으로 팔렸던 적도 없었기 때문에 한국 CMTS에는 AVM의 인증서가 설치되어 있지 않을 수도 있다. 게다가 AVM은 2016년 DOCSIS 보안 취약점 사건 이후로 케이블 모뎀 내장형 FritzBox의 UART 사용 및 셸 진입을 아예 막아 버렸다. 일단은 이걸 뚫어야 DOCSIS 인증서를 심을 수 있기 때문에 기술적으로 자신이 없다면 안 하는 것을 추천한다.

VoIP 게이트웨이도 지원하기 때문에 이론적으로는 한국 통신사의 SIP 서버에 붙여서 쓸 수도 있지만 이건 아무도 시도해 보지 않았다. 게다가 SIP 인증 정보를 구하는 것부터가 일일 수도 있기 때문에 일단 그것부터 시작해야 FritzBox의 VoIP 기능을 한국에서 살릴 수 있을 것이다. 그리고 DECT 전화기를 사용한다면 주파수에 주의해야 한다. 독일에서 사용하는 DECT 주파수는 1880-1900 MHz고 FritzBox도 여기에 맞춰져 있다. 그러나 한국 DECT 주파수는 완전 갈라파고스인 1787 MHz에서 놀기 때문에 FritzBox에 한국 디지털 무선전화기를 붙일 수는 없다. 어차피 FritzBox가 SIP 서버로도 작동하기 때문에 SIP 다이얼러 앱을 사용하면 되므로 상관은 크게 없지만.

독일에서 좋든 싫든 FritzBox를 써 보게 되더라도 소프트웨어 품질은 생각한 것보다 상당히 좋을 수도 있다는 걸 생각해 봤으면 좋겠다.