작년 블프던가 언제던가 아무튼 싸게 구매한 넷기어 R7000를 쓰던 도중... 기본 넷기어 펌웨어의 허접함에 질려 멀린펌웨어를 업글해 쓰고 있었습니다. 멀린-NG펌웨어까지 쓰던도중 멀린펌웨어도 마음에 들지 않아(아무래도 ASUS용을 트윅한놈라 그런지 몇몇부분에서 설정이 잘 안먹어 들어가는 느낌? 예를들어 자동 재부팅기능이 안됨..) 토마토나 DD-WRT로 갈아타려고 하는도중 일이 터졌습니다...
벽돌이 된 다음 알게 된 사실인데, 멀린-NG for R7000펌웨어가 초창기에 버그가 있어서 공유기의 ID를 날려먹는다고 하네요-_-
멀린펌상태에선 문제가 없으나... 기본펌웨어로 갈아타는 순간 문제가 발생합니다. 돌아온 기본 펌웨어로 그냥 쓰는 것은 문제가 없지만, 이제 다른펌웨어로 절대 못넘어가며, 넷기어의 펌웨어 업데이트도 먹통이 됩니다. 넷기어 펌웨어가 공유기의 system id를 확인하고(맞는 모델인지) 펌업이 진행되는데, system id가 없으니 아예 진행불가가 되는거지요.
더 심각한 문제는 응급복구모드(TFTP)에서 파일을 밀어넣는것도 불가합니다. 텔넷 활성화도 안먹고... 브로드컴이 자랑하는 CFE모드 진입도 안되요 ㅠㅠ(진입을 해도 명령어를 죄다 막아놔서 파티션 파악이 불가능해 flash명령어로 쓸 수도 없습니다..)
여기까지 왔으면 답이 없습니다. 뜯어야지요 -_-(멀린펌웨어 상태나 dd-wrt, 토마토상태에선 SSH로 접속하여 systemid를 할당 할 수 있습니다.)
참고로 저는 문제가 조금 더 심각했는데, 공유기 그거 다 똑같은거 아니냐? 하면서 호기롭게 USB-TTL로 들어가 플래시명령어로 잘 못 플래싱하여 완-벽-한 벽돌을 만들어냈죠 -.-
참고페이지
1. https://www.linksysinfo.org/index.php?threads/asuswrt-merlin-on-netgear-r7000.71108/post-299757 - 보드ID와 시리얼이 날라갔는지 확인해보라는 포스팅
2. https://www.linksysinfo.org/index.php?threads/asuswrt-merlin-on-netgear-r7000.71108/post-295842 - 날라갔을 때, SSH나 Telnet이 접속된다면(커스텀펌웨어 상태라면) 복구하는 방법
3. http://yum3.tistory.com/65 - ASUS공유기 벽돌 살리기 - 처음 하시는 경우 터미널접속방법까지 보시면 도움이 많이 되실 겁니다.
4. https://cacaocafe.tistory.com/294 R7000를 앰버모드(복구모드)진입법 - 하지만 제경우에는 쓸모가 없었음 ㅠㅠ
5. http://koolshare.cn/thread-4430-1-1.html - R7000용 커스텀 CFE 바이너리를 구한 곳
준비물
1. FT232RL(아두이노용) USB-TTL
2. 점퍼케이블 M-M 3가닥
3. 모딩된(system id를 체크하지 않는) R7000용 CFE 롬파일(https://www.clien.net/service/board/pds/12719982CLIEN )-저처럼 부팅이 아예 불가능한 완벽한 벽돌을 만드신 분들...
4. http://xvtx.ru/xwrt/download.htm 멀린펌웨어(토마토같은 기타 커스텀펌웨어도 괜찮습니다.)-모딩된 CFE는 넷기어 기본 펌웨어를 지원하지 않습니다. - 3번과 마찬가지로 완벽한 벽돌을 만드신 분들....
5. TFTP 서버 http://blog.pages.kr/486 (이곳에서 GUI환경으로 접속하여 업그레이드 하는방법을 4번까지만 따라합니다.) - 벽돌을 위한 복구
6. putty(https://www.putty.org/
7. TFTP 클라이언트
시작
0. 일단 아래대로만 따라하면 큰 문제는 없지만.... 롬플래싱중 실패하면 전원은 들어오는 벽돌에서 전원도 안들어오는 벽돌로 만들 수 있다는 점을 명심하세요....
1. R7000을 분해합니다. 나사는 총 5개입니다.(바닥 고무를 띄어내면 존재합니다.) 나사를 다 빼면 윗판만 스윽 빼면 됩니다.
2. https://www.myopenrouter.com/article/how-debrick-or-recover-netgear-r7000-r6300v2-or-r6250-wi-fi-routers 이곳을 참조하여 RT232RL과 R7000을 연결합니다.(GND는 직결, RX와 TX는 크로스 되어야 합니다. R7000의 TX는 RT232RL의 RX와 연결되도록.) 그리고 RT232RL를 PC와 연결합니다.
3. 장치관리자에서 RT232RL의 COM Port를 확인 후 PUTTY에서 시리얼 접속을 해줍니다. 속도는 115200, Stopbits: 8-N-1 / 플로우컨트롤은 꺼줍니다.)
4. putty에 접속한 채로 공유기를 켜고 웹브라우저에서 공유기에 접속이 되는지 확인합니다.(안되면 8번으로 내려가세요)
5. 접속이 완료되면 putty에서 아래 명령어를 입력해줍니다.
# burnboardid U12H270T00_NETGEAR
# erase nvram (이던가 nvram erase 던가 헷갈리네요 -.-)
# reboot
6. 웹브라우저로 설정창에 접속 후 펌업이 정상적으로 되는지 확인하세요.
7. 이제 단순히 systemid만 지워진 것이 아니라, 벽돌상태에 돌입하여 앰버모드(참고페이지 4번)진입이 안되거나, 진입되어도 복구가 안된, 저처럼 완벽하게 벽돌이 되신분들을 위한 설명입니다.
8. 공유기의 LAN1포트에 꽂고 PC와 연결한 뒤, PC의 IP를 192.168.1.2로 잡으시고 서브넷은 255.255.255.0, 게이트웨이는 192.168.1.1 로 설정합니다.
9. 공유기를 재부팅 하면서 putty에서 CTRL+C를 연타합니다.
10. 그러면 PUTTY에서 부팅이 멈추면서 CFE>> 란 메세지가 뜹니다.(여기까지 왔으면 성공입니다.)
11. 모딩된 CFE 롬파일(홈페이지에선 롬에 지정된 mac어드레스를 바꾸라고 했지만 전 그냥 무시하고 진행했습니다. 어짜피 나중에 정펌이나 멀린으로 엎으면 이 CFE는 사라지거든요.)을 적당한 곳에 압축을 푼 뒤, TFTP서버에서 롬파일이 위치한 곳을 지정합니다.
12. TFTP서버가 구동되었으면 이제 putty에서 명령어를 입력해봅시다
cfe> nvram erase
cfe> flash -noheader 192.168.1.2:cfe.bin flash1.boot
cfe> reboot
12. 그러면 공유기가 재부팅 될 것인데, 공유기가 자동으로 tftpd(서버모드)로 들어갈 수도 있고 안들어갈 수도 있습니다.(putty에서 확인 가능합니다.) 자동으로 tftpd로 진입되지 않는다면,
1) WPS버튼을 누른채로 공유기를 껐다가 켜시면서 전원 LED가 깜빡일때 WPS버튼을 떼 주시던지
2) 9번처럼 강제로 CFE모드로 진입하시던지-이 경우 CFE로 진입하신 뒤 cfe>tftpd 를 눌러주시면 tftpd모드로 진입합니다.
13. 여기까지 오셨다면 다 오셨습니다. 이제 준비한 커스텀펌웨어(혹은 멀린펌웨어)의 chk파일을 준비하시고 윈도우-실행-cmd 를 눌러줍시다.
14. cmd에서 커스텀 펌웨어가 들어가 있는 폴더로 이동하신 뒤
: tftp -i 192.168.1.1 put 펌웨어파일.chk
을 입력하시고 엔터를 치시면 1~2분 내외로 전송이 완료되었다고 뜰 겁니다.
15. 그리고 또 1~2분 정도 기다리시면 공유기의 lan1번포트인가 wan포트의 불이 미친듯이 점멸하는데, 이때 공유기전원을 껐다가 키세요.
16. 복구가 완료되었습니다. 이제 공유기가 정상적으로 부팅이 완료되면 다시 5번명령어를 putty에서 입력하시고, 멀린펌을 쓰시던지 정식으로 돌아오시면 됩니다.
17. 간혹 ASUS공유기 사용자분들한테서도 보이는 문제인데, 커스텀펌웨어에서 정식펌웨어로 돌아올 때 그냥 펌웨어파일을 덮으면 바로 벽돌됩니다. A커스텀펌웨어에서 B커스텀펌웨어로 바로 덮어도(예를들어 멀린에서 DD-WRT로) 마찬가지입니다.(파티션 구조가 다르기 때문에 발생하는 문제입니다.)
그래서 반드시, 커스텀펌웨어 제작자가 공개하는 Back to OFW 파일을 이용하셔야 합니다. 멀린펌웨어용은 http://www.linksysinfo.org/index.php?threads/asuswrt-merlin-on-netgear-r7000.71108/ 여기서 받으실 수 있어요. 384.4 이상은 NG용으로 복구하시면 됩니다.
끝.
제가 하면서 캡쳐를 떠놓지 않아서 따로 스샷이 없는데, 위의 참고사이트들을 보시면 스샷이 듬성듬성 나와있습니다 -.-
어렵지만.. 한번 시도할 가치가 있을지도 모르겠네요. ^^ 정보 감사합니다.
아직 멀린펌 사용중이시라면, SSH로 접속해서 #nvram get_board_id 을 찍어보시고, 정보가 뜨지 않는다면 # burnboardid U12H270T00_NETGEAR 을 입력하시면 됩니다.
따로 정리는 안해뒀는데 큰일 하십니다.
nvram get board_id와 nvram get serial_no로 체크해보니 id와 시리얼이 날아 갔네요;;
복구 해보려고 ssh로 접속 상태에서 burnboardid를 실행해봤는데 "not found"로 나오네요 , 혹시 이유를 아시나요?
이럴 땐 일단 스톡펌웨어로 돌아오신 뒤, telnet을 활성화 해서 입력하셔야 합니다.(http://www.linksysinfo.org/index.php?threads/asuswrt-merlin-on-netgear-r7000.71108/page-57#post-296988 )
/Vollago
준비물 다사서 두근두근 하면서 준비했으나 실패...
아 제 경우 핀을 Rx Tx를 크로스하면 안되서 직결했고요
CFE> tftpd 명령어도 안되고...
자동으로 Tftp모드 가길래 다시 명령어로 멀린펌 보냈는데... 안돼요ㅠㅠ
Cfe.bin과 커펌보내는게 tftp로 보내는 중 모두다 프로그래밍에서 던까지 메시지 변경 후에 멈춥니다 하루를 꼬박 기다려봤지만... 실패... ㅠㅠ
아수스 딜 기다립니다 흑흑
문라이트 워커님이 하신건 공유기가 TFTP서버역할을 하고, PC에서 파일을 보내는건데
CFE.bin을 플래싱할 때 글을 잘 보면(11번) PC를 TFTP 서버로 만들고 공유기에서 땡겨오는 것입니다.
따라서 명령어 자체가 틀린것을 볼 수 있는데, flash명령어로 직접 경로지정을 하고 플래싱 위치도 지정해줘야 합니다.
특히나 CFE같은경우는 파티션위치등이 기록된 파일이 아닌 썡 바이너리이기 때문에 무조건 PC가 TFTP서버(=TFPTD)상태가 되고, 공유기에서 떙겨야합니다.
그리고 ctrl+c를 연타 안하면 문라이트님이 격으신거처럼 자동으로 tftpd상태로 들어갑니다.
일단 putty에서 화면이 보인다면 무조건 살릴 수 있는 상태입니다.
전송완료 후 프로그래밍... 에서 Done.. 으로 바뀌고 안넘어가고 멈춰서 껐다켜고 그런 식으로 했습니다 ㅠㅠ 답변 감사합니다
정리해주셔서 감사합니다.
1. 왠지 모르지만, 2 하다가 글자가 계속 깨져나와서 오래걸렸습니다. R7000 전원 넣고 그라운드 꽂으니까 제대로 글자가 보이기 시작하더군요. 다행히 웹 접속은 안되지만 tftpd는 띄울 수 있는 상태였습니다.
2. 이건 참 바보같은 짓인데, tftpd 써넣는 거 계속 문제가 생겨서 삽질하다가 "어 선이 제대로 안꽂혔나" 하고 컴퓨터 쪽 랜선 다시 꽂아보니 통신이 제대로 되었습니다. R7000쪽 접속 LED가 안들어올 때부터 알아봤어야 하는데...