서론

AiMesh 기능이란, 두 개 이상의 라우터를 묶어 하나의 SSID로 네트워크를 구성하는 ASUS 공유기 기능이다. 해당 기능은 본래 AC68U 이상의 기종에서 지원하고 있기 때문에 TM-AC1900에서도 기술적으로는 사용가능하다. 해당 모델은 AiMesh와 같은 기능이 활성화되지 않은 펌웨어가 탑재되어 있는 상태로 출고되므로, 바로 사용이 불가능하다. 따라서 AC1900 모델의 경우 ASUS의 AC68U로 변경하는 과정을 거친 다음 비로소 AiMesh 기능을 활성화할 수 있다는 것이다.

TM-AC1900은 ASUS의 AC68U라는 기종을 티모바일이 번들용으로 제공하기 위해서 커스텀한 버전이다.

이번 포스팅에서 펌웨어를 바꾸는 과정을 설명하기에는 너무 길어서 이전 글에서 소개하였으니 해당 포스팅을 참고하면 되겠다. 여기서는 정식펌웨어로 이미 업그레이드가 진행된 이후 AiMesh를 활성화하기 위한 방법을 필자가 겪은 우여곡절을 토대로 정리해보도록 하겠다.

본론

이미 앞서 펌웨어 적용을 하면서 진행한 과정이 반복되는 부분이 많으므로 쉽게 진행할 수 있을 것이다.

CFE 적용

정식 펌웨어를 적용하는 과정에서 공유기의 CFE를 다운받아서 수정하는 과정이 있었다. 만약 이때 AiMesh 항목을 선택하여 만든 CFE를 보관해 두었다면 3번부터 진행하면 된다. 하지만 그렇지 않은 경우 아래 과정을 처음부터 진행해야 한다.

  1. ssh로 CFE 파일 다운로드

    아래 코드에 적어둔 대로 진행하면 되나, Unable to negotiate with 192.168.29.1 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1와 같은 에러가 발생할 수 있다. 이러한 경우에는 ~/.ssh 폴더에 config 파일을 옮겨주면 해결된다.

    config 파일은 여기에서 다운받기 바란다.

    $ ssh admin@192.168.29.1
    admin@192.168.29.1's password:
    
    ASUSWRT RT-AC68U_3.0.0.4 Wed Jul 16 08:39:37 UTC 2014
    admin@(none):/tmp/home/root# cat /dev/mtd0 > original_cfe.bin
    admin@(none):/tmp/home/root# ll
    -rw-rw-rw-    1 admin    root        524288 Dec 31 16:11 original_cfe.bin
    admin@(none):/tmp/home/root# exit
    Connection to 192.168.29.1 closed.
    
    $ scp admin@192.168.29.1:/tmp/home/root/original_cfe.bin ~/Desktop
    admin@192.168.29.1's password:
    original_cfe.bin                              100%  512KB   5.5MB/s   00:00
  2. CFE 파일 수정

    해당 사이트에서 1.0.2.0 US AiMesh를 선택하고 라우터의 CFE를 업로드하여 수정된 CFE를 다운받는다.

    필자는 AiMesh가 적힌 CFE로 적용하지 않고 일반 CFE를 적용하고 시도했다가 계속 실패했다. 꼭!!! AiMesh 선택하자!

  3. 수정한 CFE 적용

    수정한 CFE 파일과 mtd-write 파일을 공유기에 업로드하여 수정사항을 적용한다.

    필자는 파일 이름을 rt-ac68u_1.0.2.0_us.bin라 가정하고 명령어를 적었다. 혹시 다른 파일명이라면 그에 맞게 수정하여 적용하면 된다.

    $ scp ~/Desktop/rt-ac68u_1.0.2.0_us.bin admin@192.168.29.1:/tmp/home/root/
    admin@192.168.29.1's password:
    rt-ac68u_1.0.2.0_us.bin                       100%  226KB   3.5MB/s   00:00
    
    $ scp ~/Desktop/mtd-write admin@192.168.29.1:/tmp/home/root/
    admin@192.168.29.1's password:
    mtd-write                                     100%  716KB   3.3MB/s   00:00
    
    $ ssh admin@192.168.29.1
    admin@192.168.29.1's password:
    
    ASUSWRT RT-AC68U_3.0.0.4 Wed Jul 16 08:39:37 UTC 2014
    admin@(none):/tmp/home/root# chmod u+x mtd-write
    admin@(none):/tmp/home/root# ./mtd-write -i rt-ac68u_1.0.2.0_us.bin -d boot
    admin@(none):/tmp/home/root# reboot
    admin@(none):/tmp/home/root# Connection to 192.168.29.1 closed by remote host.
    Connection to 192.168.29.1 closed.
  4. nvram 초기화 진행
    3번 과정에서 공유기가 완전히 켜진 것(무선랜 인디케이터까지 불이 들어온 상태)을 확인하고 진행한다. 전원을 끄고 10초 정도 대기한 후, wps 버튼을 누르면서 전원을 키고 20초 정도 기다린다.

AiMesh 활성화 명령어

해당 기능을 활성화하는 과정도 이미 필자의 포스팅을 통해서 정펌으로 변경한 분들이라면 해보셨을 것이다. 롤백 방지 명령어로 알려드렸던 아래 명령어를 다시 한번 실행하면 된다. ssh 등으로 라우터에 접속하여 진행하면 된다.

$ cat /dev/mtd5 > /jffs/mtd5_backup.bin
$ mkdir /tmp/asus_jffs
$ mount -t jffs2 /dev/mtdblock5 /tmp/asus_jffs
$ rm -rf /tmp/asus_jffs/*
$ sync && umount /tmp/asus_jffs
$ rm -rf /jffs/.sys/RT-AC68U
$ nvram unset fw_check && nvram commit && reboot

마지막 명령어까지 진행하면 라우터는 잠시 뒤 재부팅을 한다. 여기까지 되었다면 AiMesh를 사용하기 위한 준비는 끝났다.

AiMesh 적용

우선 모든 공유기를 끈 상태에서 시작한다. 시작하기 앞서 필자의 경우 연결이 잘 되지 않아 몇 차례 시도한 후에야 겨우 연결이 이루어졌다. 그래서 추천하는 방법은 메인이 되는 공유기의 WAN에 인터넷을 연결하고, 1번 LAN과 노드로 사용할 라우터의 WAN에 선을 연결한 이후 진행하는 것이다. 집에 남는 랜선이 많다면 처음부터 이렇게 진행하는 것이 연결 확률을 높일 수 있을 것이다.

  1. 메인으로 사용할 공유기를 WAN에 연결한 상태에서 ASUSWRT(라우터 웹 GUI)에 접속
  2. QIS(빠른 인터넷 설정)을 통해 AiMesh 라우터 모드로 설정
  3. 노드로 사용할 공유기를 WAN에 연결하지 않은 상태에서 ASUSWRT(라우터 웹 GUI)에 접속
  4. QIS(빠른 인터넷 설정)을 통해 AiMesh 노드 모드로 설정
  5. 메인 공유기 설정 페이지에 접속하여 [네트워크 맵]-[AiMesh 노드]-[검색]을 누른다.
  6. 공유기가 검색되면 해당 공유기를 클릭하여 연결 시도
  7. 4분 정도 대기하면 연결이 완료됨

성공적으로 연결이 마무리되었다면 위와 같은 화면을 볼 수 있을 것이다. 이후에는 전원을 모두 끄고 원하는 위치로 공유기를 이동시켜도 AiMesh 라우터-노드 간 연결이 자동으로 된다.

마치며

사실 공유기 설정을 하는 과정에서 가장 애를 먹었던 부분인 것 같다. AC1900의 펌웨어 변경 과정에서는 멀린펌도 AiMesh가 되는 줄 알고 올렸다가 내리는 과정이 있었지만 이것은 쉽게 해결했는데, 막상 두 대의 펌웨어 변경을 무사히 마쳤는데 AiMesh 설정이 안되서 진짜 포기를 해야하나... 고민이 너무 많았다. 그렇지만, 꼭 오늘 안에 하고 말겠어라는 강한 의지로 몇 시간에 걸쳐 다양한 시도를 했고 겨우 해내고 말았다. 위 과정은 다른 블로그에서도 소개되긴 했으나 정보가 잘 검색되지는 않았다. 그래서 여러 정보를 취합하여 필자가 성공한 방법으로 정리해보았다. 많은 분들께 도움이 되었으면 좋겠다.

참고한 문서