컴퓨터

barbushin/php-imap으로 웹메일을 구현했는데 한글이 깨집니다.

PHP를 이용하여 웹메일을 구현하려고 barbhshin/php-imap이란 클래스를 사용해봤습니다. 첨부파일까지 따로 저장하고 꽤 간편하게 구현할 수 있었는데, 몇몇 이메일 중에 ks_c_5601-1987로 인코딩된 것은 한글이 깨지는 것이었습니다.

다 잘됐다면 한방에 날로 먹을 수 있었는데, 아쉽네

구글느님에게 방법을 찾아보니, 아래와 같이 하여 해결하였습니다.

PHP-IMAP 2.2.5 을 쓰신다면 (<=PHP 5.3)

Mailbox.php의 convertStringEncoding function 중에 779줄에

if(!$string || $fromEncoding == $toEncoding) {
	return $string;
}

밑에 아래 1줄 추가

$fromEncoding = !isset($fromEncoding) || $fromEncoding == 'ks_c_5601-1987' ? 'CP949' : $fromEncoding;	

PHP-IMAP 3.0.4 나 그 이후 버전을 쓰신다면 (>=PHP5.5)

Mailbox.php의 convertStringEncoding function 중에 746줄에

if(!$string || $fromEncoding == $toEncoding) {
	return $string;
}

밑에 아래 1줄 추가

$fromEncoding = !isset($fromEncoding) || $fromEncoding == 'ks_c_5601-1987' ? 'CP949' : $fromEncoding;	

깨졌던 한글이 쫙하고 제대로 나올 겁니다. 그럼 이만

컴퓨터

Composer가 왜 자주 등장하지?

PHP를 이용하여 Invoice 출력을 위한 PDF 변환 패키지를 찾던 중, 이 패키지 설치 과정에서 Composer가 필요하다는 것을 알게 되었습니다. Composer에 공부할 시간은 없고, 대신 다른 WORD 변환 패키지로 대신 찾던 중, 역시 거기도 Composer가 어김없이 등장하였습니다.

아, 요새는 Composer가 대세인가? 피해 갈 수 없겠군

이란 생각이 들어, 여기서 한번 배운 걸 정리해보았습니다.

PHP 의존성 관리 도구 Composer

Composer

컴포저는 PHP로 프로젝트를 개발할 때에 다양한 패키지나 라이브러리를 관리하기 편하게 해주는 도구입니다.

예를 들어 A 프로젝트는 1년 전에 작성하였고 B 프로젝트는 최근에 작성하였는데, 같은 패키지라도 A는 패키지 1.0판에서만 작동하고 B는 패키지 2.0판에서만 작동한다면, 패키지를 도저히 전역적으로 설치해서 관리하기 힘듭니다.

컴포저를 사용하기 전에는 user_lib 이라는 폴더에 여러 가지 패키지를 몰아넣고, 같은 패키지라도 판별로 넣어두고 사용했지만, 컴포저가 있다면 이제는 프로젝트의 composer.json에 미리 선언만 해두면 프로젝트 내의 하위 폴더 (ex.)vendor)에 자동으로 설치되고 관리되며, 다른 서버로 배포되거나 이동되더라도 이미 선언된 패키지의 버전만 자동으로 설치됩니다.

어떻게 사용하지?

4줄 요약

  • 서버에 Composer를 먼저 설치해 놓자
  • 개발하고 있는 프로젝트에, composer.json 파일을 만들어서 거기다가 사용할 여러 패키지를 선언해둔다.
  • 선언해 두면, Composer가 알아서 개발하고 있는 프로젝트 폴더에 vendor 란 하위 폴더가 만들면서, 선언해 둔 패키지들이 자동으로 내려받아 진다.
  • 개발하는 page에 require '/vendor/autoload.php'; 를 삽입한다.

Composer 설치하기

컴포저 홈페이지

사용환경 : PHP 5.3.2+ 이상

설치방법은 위의 컴포저 홈페이지에 나와 있지만, 간단히 설명해 드리면,

  • 윈도우인 경우 : Composer-Setup.exe 를 내려받아 실행
  • 리눅스인 경우는 putty.exe 등으로 터미널로 들어가서 :
    php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php
    php -r "if (hash('SHA384', file_get_contents('composer-setup.php')) === 'fd26ce67e3b237fffd5e5544b45b0d92c41a4afe3e3f778e942e43ce6be197b9cdc7c251dcde6e2a52297ea269370680') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); }" 
    php composer-setup.php 
    php -r "unlink('composer-setup.php');"
    

    4줄을 실행하면 putty에서 4줄 명령어를 실행한 그 위치에 composer.phar 파일이 생성됩니다.

    mv composer.phar /usr/local/bin/composer

    이렇게 하면 설치가 완료.

composer.json 만들기

저 같은 경우 invoice 프로젝트를 만들고 있는데 /bill 폴더에서 작업하고 있습니다. putty로 접속하여 /home/www/board/bill 경로에서

composer require mikehaertl/phpwkhtmltopdf

이렇게 선언하면 /bill 폴더에 Vendor란 폴더가 생기면서 선언된 패키지가 자동으로 내려받아 지고, /bill 폴더에 composer.json 파일이 생기게 됩니다. composer.json을 열어보면

{
    "require": {
        "mikehaertl/phpwkhtmltopdf": "^2.1",
    }
}

이렇게 내용이 작성됩니다.

만약 다른 패키지를 또 선언한다면

composer require phpoffice/phpword

역시 /bill 폴더의 Vendor에 다른 패키지가 자동으로 내려받아 지고, composer.json에도 추가로 등록됩니다.

{
    "require": {
        "mikehaertl/phpwkhtmltopdf": "^2.1",
        "phpoffice/phpword": "^0.12.1"
    }
}

이렇게 추가됩니다.

개발하고 있는 프로젝트 파일에 autoload 선언하고 사용하면 끝

제 프로젝트 파일은 bill00.php인데, 상단에 autoload를 추가하면 됩니다.

require __DIR__ . '/vendor/autoload.php';

이후에는 추가한 패키지의 홈페이지에서 알려주는 설치방법대로 사용하면 됩니다.

설치한 패키지를 모두 지우고 싶다고요? 그냥 composer.json 파일과 vendor 폴더를 지워버리면 됩니다.

남은 이야기

우연히 PHP WkHtmlToPdf를 판올림하다가 Composer 없이는 설치할 방법이 없게 되어서 부득이 배우게 되었습니다. 마찬가지로 Phpword 또한 Composer 설치로 바뀌어서, 이제는 composer 추세가 된 듯합니다. 제 프로젝트는 아직 개발 중이지만, 앞으로 필요한 메일 구성이나 템플릿 관련 패키지도 뭐가 있는지 구글로 눈요기하면서 composer를 이용해 설치해볼 생각입니다.^^

컴퓨터

기계식 키보드 볼텍스 TYPE EF 사용기

최근에 우연히 기계식 키보드를 타건해보고 나서, 키감의 신세계를 맛보게 되었습니다. 지금까지 쓰던 것이 스카이디지탈 nKEYBOARD nKey-1이어서, 기계식 키보드도 스카이디지탈 쪽으로 눈팅을 했는데, 단순하고 필요한 기능만 있는 볼텍스 TYPE EF가 끌려서 구매하게 되었습니다.

Vortex Type EF Keyboard

기존에 쓰던 일반 nKey-1보다도 오히려 작고, 외형은 무광택인 데다가 자투리 공간도 없고, 단순 그 자체입니다. 묵직함이 있어서 예전처럼 툭툭 쳐서 본체를 움직이는 것은 불가능할 듯합니다. 자판은 LED를 켜지 않으면 일반 키보드보다 흐릿해 보여서 역시 LED를 켜야 선명하게 보이더군요.

Vortex Type EF Keyboard

키감

갈축으로 구매하였는데, 갈축의 느낌을 표현하면, 가볍고, 딸각하고 걸리는 느낌은 없지만 따닥거리는 느낌이 경쾌해 보입니다. 이보다 더 가볍다면 누르는 느낌이 없어서 안 좋을 것 같다는 생각이 듭니다. 아직 게임 등을 해보진 않고 타이핑만 해보았지만, 장시간 사용에 손가락 부담을 많이 덜어 줄 것으로 기대됩니다. 구입하면서 청축도 한번 타건해봤는데, 뜻밖에 소리가 크지 않고 청축도 괜찮은 것 같습니다.

윈7에서 한영전환 안 되는 문제

윈7에서 처음 설치하고 한영 키가 안 먹어서 약간 당황했지만, 다행히 제조사에서 제공하는 팁으로 잘 해결하였습니다.

내려받기 링크 : vortex 한영키 해결

right_alt_key.zip을 내려받아서 USB-키보드-변경(오른쪽ALR키를-한영으로전환).reg 를 실행하고 재부팅 하니 한영전환이 잘 되었습니다.

아니면, 굳이 내려받지 않고 아래의 내용을 메모장에 복사해서 위의 파일 이름으로 저장하여 실행해도 될 것 같습니다.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters]
"LayerDriver KOR"="kbd101c.dll"
"OverrideKeyboardIdentifier"="PCAT_101CKEY"
"OverrideKeyboardSubtype"=dword:00000005
"OverrideKeyboardType"=dword:00000008
 

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,\
                   00,00,00,00,\ 
                   03,00,00,00,\
                   72,00,38,E0,\ 
                   71,00,1D,E0,\
                   00,00,00,00

기능키 요약

상자에 첨부된 기능키 설명서가 영어라 간단히 한글로 정리해보면

  • FN + X : 원래 FN키 자리에 있던 메뉴키 사용
  • FN + 윈도우키 : 윈도우키 잠금 (왼쪽 윈도우 키 LED가 켜짐)
  • 한 번 더 누르면 풀림 (풀릴 때는 왼쪽 윈도우 키 LED가 꺼짐)
  • FN + F12 : 6+1 롤오버 (키보드 보안이 필요한 환경) (F12 키 LED가 켜짐)
  • 한 번 더 누르면 무한입력 (게임 사용 시) (F12 키 LED가 꺼짐)
  • FN + 0 ~ 8 : 0 : 꺼짐 1~7 : 밝기조절 8 : 밝았다가 어둡다가 반복 (일명 숨쉬기 모드)
  • FN + S : 부팅을 하면 조절해 둔 밝기가 초기화가 되므로 원하는 밝기로 저장하는 기능

오른쪽 위 4가지 기능키는, 소리뮤트토글, 소리 작게, 소리 크게, 계산기입니다.

남은 이야기

후방주의, 마눌 어그로를 팍팍 끄는 휘황찬란한 스타일보다는, 여타 게이밍 기계식 키보드보다 저렴하면서, 필요한 기능만 딱 맞는 단순한 키보드를 찾으시는 분에게 권할만합니다.주1

각주.
  1. 참고로 저는 볼텍스와 아무런 이해관계가 없습니다. [Back]
컴퓨터

SVN을 카페24 웹호스팅에서 이용하기

최근에 버전관리도구인 SVN을 접할 기회가 있어서, 이번 기회에 몇가지 작업을 SVN으로 관리하기로 하였습니다. 회사 내에서는 우분투 서버에 설치해서 쓰고 있는데, 장소에 구애받지 않고 집에서나 회사에서나 사용할 수 있는 방법이 없을까 고민하던 중에, 카페24 웹호스팅에서 SVN, GIT를 지원하는 것을 알게 되어, 사용법을 소개하고자 합니다.

참고

  1. 제가 현재 사용하는 카페24 서비스 : 10G 광아우토반 FullSSD 일반형
  2. 서버에 설치된 SVN 버전: svn, version 1.4.2 (r22196)

1. 저장소 만들기

TortoiseSVN 로도 만들 수 있지만, 제 경우는 GUI 메뉴가 이상하게 더 어려워서(?) 시킴말(명령어) 방식으로 알려드리겠습니다.

만드실 프로젝트 이름이 예를 들어 sample이라면, putty로 계정에 접속하여 www 디렉터리에 아래와 같이 저장소를 만듭니다.

mkdir svn_repos
cd svn_repos
svnadmin create --fs-type fsfs sample

2. 저장소 설정

sample의 conf 디렉터리에 보면 svnserve.conf, passwd, authz 파일이 들어 있는데 각각 아래와 같이 수정합니다.

svnserve.conf

anon-access = none
auth-access = write
password-db = passwd
authz-db = authz

하이라이트 된 3, 4번은 파일명이므로 특별한 경우가 아니면 고치지 않습니다.

passwd

[users]
sampleuser = 123456

사용자 ID와 암호입니다.

authz

[/]
sampleuser = rw

passwd에 입력된 사용자의 파일에 대한 권한 설정입니다. 읽기, 쓰기 허용(rw)으로 해야겠지요.

저장소 설정이 다 되었으면 subversion 서버를 실행합니다. putty에서 아래의 명령어를 실행합니다.

 svnserve -d -r /home/hosting_users/카페24아이디명/www/svn_repos

여기서 경로는, 꼭 절대 경로를 입력하셔야 합니다.

참고 : 절대 경로를 모르시면 아래의 path.php을 계정에 만들어서 웹 브라우저에서 실행해보세요


"; echo " 홈 주 소 : http://".$HTTP_HOST."/"; ?>

(첫 줄의 <!--?php에서 !--는 지워주세요)

SVN 서버 실행을 멈추고 싶으시면>

 pkill svnserve

하시면 됩니다.

3. 기본 디렉터리 생성

이제, 막 생성되서 텅빈 저장소에 branch, tag, trunk등의 디렉터리를 만들어주셔야겠지요? 이 부분은 시킴말(명령어)로 하기에는 좀 어려운 감이 있는데, 그냥 4번 단계로 넘어가서 TortoiseSVN의 [저장소 브라우저] 기능에서 [폴더 생성]으로 하셔도 됩니다.

putty에서 아래와 같이 입력하면

svn mkdir svn://도메인명/sample/trunk
svn mkdir svn://도메인명/sample/branch
svn mkdir svn://도메인명/sample/tag

svn: 로그 메시지를 구하기 위해 외부 프로그램을 사용할 수 없습니다. SVN_EDITOR 환경변수를 설정하시거나 --message (-m) 또는 --file (-F) 옵션을 사용하세요. svn: 환경변수 SVN_EDITOR, VISUAL, EDITOR 중 하나는 설정하거나, 'editor-cmd' 를 구성화일에 명시해야합니다.

이런 에러를 뱉어내므로 다른 설정을 좀 해줘야 합니다.

putty에서 www 디렉터리의 전 단계인 루트 디렉터리로 가서>

vi ./.bash_profile

보이지 않게 숨겨진 .bash_profile를 vi로 열어서 맨 끝 줄에 아래의 2줄을 추가합니다.

SVN_EDITOR=/usr/bin/vim
export SVN_EDITOR

저장하고 빠져나오고, 바로 적용을 위해 아래의 명령을 실행

source ~/.bash_profile

다시 기본 디렉터리를 생성해보면

svn mkdir svn://도메인명/sample/trunk
svn cafe24

로그 메시지를 위와 같이 입력하고 저장하고 나오면, 아래와 같이 사용자명과 암호를 묻습니다.

첫번째 호스팅 계정명으로 묻는 암호도 passwd파일에 지정한 암호로 똑같이 입력하니깐 넘어가더군요

svn cafe24

나머지 branch와 tag 디렉터리 또한 같게 만드시면 됩니다.

4. TortoiseSVN에서 체크아웃하기

처음부터 TortoiseSVN에서 1번부터 3번까지의 작업을 할 수 있지만, 편의상 생략하였습니다. 저장소에서 소스 가져오기(체크아웃)부터는 TortoiseSVN에서 사용해보도록 하겠습니다.

사용하는 윈도우 데스크톱의 적당한 폴더(예:sample)를 만들어서 오른쪽 클릭을 해보면, [SVN 체크아웃] 메뉴가 있습니다.

svn cafe24

저장소 URL에 svn://도메인명/만든 프로젝트명을 입력하고 확인을 누릅니다. ex.) svn://abc.com/sample

svn cafe24

체크아웃이 완료되었으면 완료 불쑥 창이 뜨고 확인을 누르면 폴더 내에 위에서 만들었던 branch, tag, trunk가 내려받기 되어 있을 것입니다. (3번 단계를 안 하셨다면 텅 비어있겠지요?) 이제 trunk내에 자신의 문서를 만들어, 변경 사항이 중요한 시점에 이르면 커밋해주시면 됩니다.

남은 이야기

카페24 호스팅에서 SVN을 사용하는 방법을 소개한 것이므로, SVN의 자세한 사용법은 다루지 않았습니다. (자세한 내용을 알고 싶으시면, 밑에 두 링크를 참조) GitHub, BitBucket, 네이버 개발자센터도 같은 서비스를 제공하지만, 텍스트큐브 플러그인이나 스킨 등의 간단한 수정 같은 것에는 SVN이 더 쉽고 편한 것 같습니다.^^

참고 링크

컴퓨터

FON2100D/F 공유기 DD-WRT로 해킹하기

회사에서 WIFI 확장에 필요해서 8년도 더 된 FON 공유기를 꺼내들었습니다. OpenWRT 기반으로 Fon에서 개조한 원래의 펌웨어로는 사용에 제한이 있어서, DD-WRT로 핵펌하였는데, 사용하는 방법을 정리하고자 합니다.

준비물

  • putty.exe
  • WinpCap
  • FonFlash.exe
  • DD-WRT 펌웨어 파일 (linux.bin)
  • 만약 RedBoot가 막혀있는 경우 추가로 필요한 것
  • hfs.exe
  • openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma, out.hex, sshenable.htm 파일 3개

확인사항

    • FON 펌웨어 버전 확인 (0.7.1.1 이하인지 확인)

1. 준비물 내려받기

작업하기 편하게 한 폴더에 몰아 넣어 보관합니다. (WinPcap의 경우는 설치하셔야 합니다.)

여기서 먼저 [4. DD-WRT 펌웨어로 교체하기] 과정을 해보시고, Telnet for RedBoot not enabled 에러가 안나시는 분은, [2. FON 초기화], [3. RedBoot 막혀있지 않은 OpenWrt 펌웨어로 교체하기] 과정을 생략하셔도 됩니다.

2. FON 초기화

FON 초기화면

초기화방법

전원이 켜진 상태에서 전원초기화 버튼 30초간 누르고 전원을 빼고, 누른 상태에서 전원을 켜서 5분정도 기다렸다가 누르는 것을 멈춥니다.

그러면 다시 저절로 재부팅이 됩니다. 5분정도 부팅을 기다리면, 웹에서 169.254.255.1 접속하여 펌웨어가 낮아졌는지 확인합니다.

FON 펌웨어가 0.7.1.1이상인 경우 FON 초기화를 통해 0.7.1.1 이하로 낮출 수 있습니다. (제 경우는 0.7.2 r3에서 0.7.0 r2로 낮아짐)

3. RedBoot 막혀있지 않은 OpenWrt 펌웨어로 교체하기

1. PC의 랜카드와 FON공유기를 랜선으로 직접 연결합니다.
2. 컴퓨터의 네트워크 어댑터의 TCP/IP 속성을

Fon 네트워크 어댑터 속성

  • IP 주소 : 169.254.255.2
  • 서브넷 마스크 : 255.255.0.0
  • 기본 게이트웨이 : 169.254.255.1
  • 기본 설정 DNS 주소 : 169.254.255.1

로 변경.

3. HFS를 실행하여 Menu의 Add files...를 눌러서

HFS 사용법

  • openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma
  • out.hex

파일을 넣어둡니다. (파일을 넣어두는 것으로 끝. 알아서 잘 작동합니다.)

4. sshenable.htm를 웹상에서 열어서 Submit 버튼을 누릅니다. 로그인창에

아이디 : root 암호 : admin 입력하면, 잠시 뒤에 Fon 페이지가 뜨면 잘 된 것 입니다. 다음 단계로 넘어갑니다.

sshenable.htm

(Fon 페이지가 안 뜨면 잘 안된 것입니다. 웹브라우저를 IE보다는 firefox나 Google Chrome으로 해보세요. 여기서 제대로 안되면 다음 단계인 putty 접속이 안됩니다.)

5. putty를 실행하여 Host Name (or IP address)에

169.254.255.1 를 입력하고 맨 아래의 open 버튼을 누릅니다. (여기서 Port : 22, Connection type: SSH 는 기본값으로 잘 선택되었으므로 바꿀 필요 없습니다.)

* 여기서 접속이 안된다는 팝업메세지가 뜨면 위의 4번 submit 단계를 다시 잘 해봅니다.

putty fon

PuTTY Security Alert 창이 뜨면 [아니오[N]] 버튼을 눌러줍니다.

login as : 화면이 뜨고 접속이 되면 login as 에

root

root@169.254.255.1's password: 에

admin

을 입력하여 로그인합니다.

root@OpenWrt:~# 가 뜨면 이제부터 command상으로 명령어를 입력해야합니다.

putty fon login

5-1. 펌웨어 업그레이드 1/2
mv /etc/init.d/dropbear /etc/init.d/S50dropbear
cd /tmp
w get http://169.254.255.2/openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma
mtd -e vmlinux.bin.l7 write openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma vmlinux.bin.l7
reboot

( * 주의 : 3번줄의 w get은 사이 간격을 붙여주세요.)

마지막

mtd -e vmlinux.bin.l7 write openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma vmlinux.bin.l7

명령을 치면

Writing from openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma to vmlinux.bin l7 ... [w]

요런 메세지에서 시간이 몇분 걸리므로 기다리다가

root@OpenWrt:~#

가 다시 나오면, reboot하면, 공유기가 재부팅되면서 putty접속이 끊깁니다. putty를 종료합니다.

putty openwrt-ar531x-2.4-vmlinux-CAMICIA.lzma

공유기 재부팅시간인 2~3분을 기다리고, 5번 단계를 다시 하여 putty로 접속 하고 5-2 단계를 마저 합니다.

root@OpenWrt:~# 상태에서 다시 command상으로 명령어를 입력합니다.

5-2. 폄웨어 업그레이드 2/2
cd /tmp
w get http://169.254.255.2/out.hex
mtd -e "RedBoot config" write out.hex "RedBoot config"
reboot

( * 주의 : 2번줄의 w get은 사이 간격을 붙여주세요.)

mtd -e "RedBoot config" write out.hex "RedBoot config"

명령에서

Writing from out.hex to RedBoot config ... [w]

이런 메세지에서 잠깐 기다리면 root@OpenWrt:~# 가 다시 나오면, reboot하면 공유기가 재부팅되면서 putty접속이 끊깁니다.

putty out.hex

주3

4. DD-WRT 펌웨어로 교체하기

1. 이제 FON공유기의 전원을 빼고,

2. FonFlash.exe 를 실행하고주4 Select Firmware Type: 를 DD-WRT 로 바꿉니다.

Select Firm File: 에서 linux.bin 을 선택하고 Flash Router Now! 를 누르면

No Packet 문구가 차례대로 뜨는 것을 확인하고 FON공유기에 전원을 넣습니다.

몇분간 기다리면 팝업 메세지로 Device Flashed Successfully 가 뜨면 끝입니다.

Fon Flash

Fon Flash Success

5. DD-WRT 설정하기

1. 컴퓨터의 네트워크 어댑터의 TCP/IP 속성을

DD-WRT 네트워크 어댑터 속성

  • 자동으로 IP 주소 받기
  • 자동으로 DNS 서버 주소 받기

로 변경

FON과 랜카드가 랜선으로 연결된 상태 그대로, 웹브라우저 상에 192.168.1.1로 접속하여 설정화면으로 이동합니다. 주5

2. 초기 아이디, 암호 변경

DD-WRT 초기암호 변경

아이디, 암호를 변경해 줍니다.

3. 기본설정 변경

DD-WRT 기본 설정

제 사용 목적은 WI-FI 확장이기 때문에, 기본 공유기가 있습니다. 따라서 WAN은 사용하지 않으므로

Setup -> Basic Setup 에서 WAN Connection Type를 Disabled 로 하였습니다.

DHCP Server 또한 기본 공유기에서 사용하므로 Disable로 하였고, 맨 밑의 Time Zone은 UTC +9로 바꾸시고 Summer Time (DST)는 none으로 고쳤습니다.

4. 무선 설정 변경

DD-WRT 무선 설정

Wireless -> Basic Settings 에서, 제 용도에 맞게 AP기기가 필요하므로, Wireless mode는 AP로 하였습니다. Channel Width : Turbo (40 Mhz)는 AP가 아예 뜨지 않아서 사용할 수 없었고, Wireless Network Mode : Mixed와 G-only 는 비슷한 다운로드 속도, B-only는 Mixed 대비 1/3정도의 속도가 나왔습니다.

Wireless mode : AP
Wireless Network Mode : Mixed
Channel Width : Full (20 Mhz)
Wireless Channel : Auto
5. 무선 보안 설정 변경

DD-WRT 무선 보안 설정

Wireless -> Wireless Security 에서, 무선 보안 설정을 하시면 됩니다.

Security Mode : WPA Personal
WPA Algorithms : AES
WPA Shared Key : 10자리 암호

이제 적당한 장소에 허브에 랜선으로 연결하여 설치하시어 AP 확장기기로 사용하시면 됩니다. FON 2대가 있었는데 하나는 메인 IPTIME 무선공유기가 잘 안닿는 장소에, 나머지 하나는 제 자리에 일딴 설치에 두다가 다른 데 쓸 일이 생기면 쓰기로 하였습니다. 쓰시는 네트워크 환경에 맞게 Basic Setup -> Network Setup의 Router IP에 적당한 내부 IP를 넣어주셔야 겠지요.

남은 이야기

FON 공유기가 너무 구형이라 N-mode도 지원안하고, 범위도 좀 약한 편이라 메인으로 쓰기에는 부족하지만, 보조AP로 쓰기에는 손색이 없는 것 같습니다. 시간 널널하시고 굴러다니는 FON공유기가 있으신 분은 재미로 한번 시도해 보시는 것도 좋을 것 같습니다.

각주.
  1. Download: 에서 셀렉트바의 값을 Firmware Images -> FonFlash로 바꾸면 아래에 fon-flash-windows.zip 링크가 뜸 [Back]
  2. openwrt-3.zip.txt는 내려받으시고 openwrt-3.zip으로 파일명을 바꾸세요. [Back]
  3. 두번재 putty접속에서는 4번 단계를 다시 하실 필요가 없지만, 혹시 저처럼 mv /etc/init.d/dropbear /etc/init.d/S50dropbear 에서 오타가 나서 잘못된 파일명으로 바꾸셨다면 sshenable.htm 파일을 웹상에 열어서 input란에 바뀐 파일명으로 바꿔서 submit하세요. [Back]
  4. WinpCap을 설치하고도 FonFlash.exe가 실행이 안되신다면 Microsoft Visual C++ 2008 SP1 (x86) 도 설치하시길 바랍니다. [Back]
  5. 여기서 설정화면이 접속이 안된다면, 펌웨어 교체 단계가 잘 안된 것이므로 [4. DD-WRT 펌웨어로 교체] 단계를 다시 해보세요. 저도 잘 안되서 linux.bin을 새로 다시 내려 받고, 다시 해보니 잘 되었습니다. [Back]