20110626 :: iOS5 베타 1일 사용기

여차저차저차해서 애플 개발자 등록을 완료했고, 결국iPod과 iPhone에 iOS5 베타를 설치해보았습니다. 뭐 새로 추가되는 기능을 사용하는 앱을 개발하는 목적은 아니고, 애플 개발자 등록한 김에, 또 새로 나온 기능들도 너무 궁금하고 그래서 설치해 보았습니다. 1

아무래도 베타버전이고 일반 앱이 아닌 OS이기 때문에 좀 꺼려지는 감도 없지 않아서 iPod에만 우선 설치해보았습니다. 개발 장비로 등록을 해야 한다고 해서 아이팟을 등록하고 OS 이미지를 내려 받아 설치했습니다. 인증서를 생성해서 개발자 포탈에 등록하는 과정은 좀 복잡했는데, xcode4에서는 그 이후에 디바이스를 개발용으로 등록하는 과정은 xcode 상에서 “add to portal”만 해주면 되어서 정말 간단했습니다.

실상 이렇게 고생해서 해 놓고나니, 바로 다음날 iOS5 베타 2가 나오는 바람에 또 한 번 갈아 엎는 참사가 있었지만 말입니다.

암튼 그다지 참신한 글은 못될 거 같아서 기능이야기는 좀 생략하고 사용해본 소감을 이야기해 봅니다.

1. 아이팟의 경우에는 베타버전이긴 하지만 상당히 안정적입니다. 체감할 수 있는 성능이 전반적으로 향상된 느낌이 들어요. 공식앱과의 통합이 이루어진 트위터의 경우에도 푸시 알림이 빠릿빠릿하게 잘 들어옵니다.

2. 다만 배터리는 상당히 빨리 닳아버립니다. 이 부분은 아직 최적화가 안되어 있는 부분이긴 합니다만, 4.3.3 버전에 비해서 전원 용량 관리가 거의 ‘안되고 있는 것 아니냐’는 느낌이 들긴 합니다.

3. 기타 성능은 상당히 좋아졌습니다. 다만 신규로 글을 작성하는 액션 시에, 그러니까 키보드가 올라와야 하는 시점에 딜레이가 좀 상당히 발생합니다. 그 외에는 유튜브 영상이 링크된 페이지에서 영상을 클릭하면 아이폰/아이팟은 유튜브 플레이어가 실행되는데, 그 시점에 플레이어 앱이 자꾸 죽는 문제가 있네요.

4. 전체적으로 만족스러운 점은 아이팟에만 국한됩니다. 아이폰에서는 버벅임과 딜레이가 상당히 심각한 수준입니다. 아 물론 베타 1의 경우에는 좀 쓸만했어요. 베타 2는 절대 아이폰 사용자라면 도전해 보지는 마시길.

5. 베타 2로 넘어오면서 아이튠즈와 무선으로 동기화가 가능해집니다. 아이튠즈와 아이팟/아이폰이 같은 네트워크에 있으면 케이블을 연결하지 않아도 아이팟이 아이튠즈에 뜹니다. 아이팟의 설정에서 동기화를 시작하여 바로 동기화 할 수 있어요. 무선으로 아이팟이 백업되고, 음악, 동영상 등의 컨텐츠가 자동으로 전송됩니다. 물론 아이튠즈는 같은 시간에 동시에 다른 기기와도 유/무선 동기화가 가능합니다. 아이튠즈 10.5 베타의 윈도 버전을 설치하는 경우에는 wifi를 통한 동기화 옵션이 표시되지 않습니다. 아마 정식으로 판올림 될 때에는 윈도 버전에도 포함될 기능이겠지만, (어쩌면 포함이 안될지도 모릅니다. 정말로 어쩌면이지만요)

개인적으로 무선 동기화 기능은 정말이지 가장 마음에 듭니다.

6. iCloud가 무료로 본격 제공됩니다. 클라우드 저장 공간은 기본 5GB가 제공되는데, 사실 이 공간에 뭔가 올려서 백업을 하겠다? 턱도 없이 부족할 공간입니다. 아직까지 어떤 자료가 어떤식으로 올라가서 동기화될 수 있는지 그건 시각적으로 확인이 안되니, 테스트를 해보면 파악이 될 듯 하지만 너무 귀찮아요;;;
게다가 iCloud 서비스는 정식 출시시에는 현재와 다른 형상일 수 있다고 하니 이 부분은 조금 추이를 지켜보는 게 좋겠군요. 다른 건 몰라도 사파리의 북마크를 동기화할 수 있고 메모를 동기화할 수 있다는 점은 가장 마음에 듭니다.
음, 그런데 연락처 같은 경우에는 iPhone의 연락처를 어떻게 iCloud로 옮기는지는 아직 그 방법을 모르겠네요;; -_ -;

iOS5의 전반적인 모양새는 상당히 기대해도 좋을 정도라는 건 분명합니다. 그리고 묘하게도 맥(iTunes)에 대한 의존성을 크게 떨어뜨리는 형태로 업그레이드가 진행되지만 더 좋은 맥을 살 필요가 있을 거라는 느낌이 직관적으로 들기도 합니다.

현재 베타2의 성능은 좀 불만스러운 면이 있지만 정식 버전으로 다듬어질 때 즈음엔 상당히 영향력 있는 OS가 될 것으로 예상됩니다. 올 가을을 기대해도 좋을 듯 합니다.

  1. 그렇다고 해서 꼭 베타 OS를 설치하려고 뭐 개발자 등록 신청을 한 건 아니지만요

20110621 :: SQLite3에서 대소문자 구분 없이 비교하기

사실, SQL 표준 구문이겠지만 왜 그간 이 이슈를 한 번도 제대로 생각하지  않았는지는 의문이다. 혹은 아예 테이블/칼럼의 속성 자체에 대소문자를 구분하지 않도록 정의하는 것이 있는지도 모르겠다.

SELECT * FROM MyTable WHERE t_Name = ‘Alice’ COLLATE NOCASE;

말미에 붙인 COLLATE NOCASE는 문자열을 비교할 때,  대소문자에 대해 구분을 하지 않는다.

일단 나머지는 다음에 정리하기로하고, 나중에 찾기 쉽에 이것만 메모.

20110607 :: 애플을 절대로 뛰어 넘을 수 없는 당신들에게.

스티브 잡스의 새 세탁기 구매기

스티브 잡스에 대한 이야기는 사실 애플의 키노트만 있은 직후면 워낙에 인터넷 이곳 저곳을 달구는 이야기 소재라, 좀 식상한 감이 없잖아 있습니다. 최근 애플을 이야기할 때는 항상 “혁신”이라는 이야기를 하고 잡스를 이야기할 때는 “해적의 리더십”이라느니 뭐 그런 이야기를 많이들 하고 있습니다. 그러면서 애플 같은 기업 혹은 애플을 뛰어 넘는 기업이 되기 위해서는 우리도 “인문학1“을 해야 한다는 뭐 그런 이야기들이 나돌면서 때아닌 “인문학” 열풍이 그것도 진짜 “인문학”2이 열풍이되는 웃지도 웃지 않을 수도 없는 그런 풍경이 연출되고 있습니다.

하지만 진작 본질은 인문학에 있지 않습니다.3 애플이 ‘혁신’을 이룬 것은 절반의 사실입니다. 즉 이것은 어디까지나 애플 외부에서 애플을, 그리고 애플의 제품을 바라보았을 때 이야기일 뿐이라는 말입니다. 애플의 제품은 애플 내부에서는 혁신이라 부르지 않을 것입니다. 그것은 단순히 “관심을 갖고 바라보았더니 그리 되었더라”의 산물일 뿐입니다.

그러니까, 결국 스티브 잡스가 천재다? 뭐 그런 말을 하려는 건 더더욱 아닙니다. 애플의 화려한 재기. 그리고 그 현상을 뒤덮는 수 많은 미사여구들. 그리고 그런 것들에 현혹되어 가장 큰 낭패를 보는 이들은 소비자가 아닌 경쟁사들입니다.

애플을(잡스를) 배우고 싶고, 뛰어 넘고 싶어하는 기획하는 사람, 경영하는 사람이 정말 많이 있습니다. (개발/디자인을 하는 사람은 애플에서 일을 하고 싶어 하지요) 그들에게 잡스는 일종의 지표이자 롤 모델이기도 하고 동경이기도 합니다. 덕분에 또 많은 글 좀 쓴다는 분들이 잡스에 대한 글을 써서 책도 많이 파신 것으로 알고 있습니다.

쩝, 그런데 그런 모든 정보들 가운데서 얼마나 그중에 과연 ‘얼마나 가슴에 와 닿는’ 문구가 당신에게 있었는지는 모르겠습니다. 그리고 ‘어떻게 하라’고 제시하는 그런 글이 또 있었을까요? 에이 설마요. 스티브 잡스가 직접 자기 이야기를 쓰더라도 아마 그건 알려주지 않을 것입니다.

그럼에도 불구하고 저는 철저히 기획자의 입장에서 생각할 때 무엇이 지금의 애플의 성공을 이끌었는지 말해준다고 확신하는 에피소드가 바로 다음의 이야기라고 생각합니다. 새로운 에피소드는 아니고 한 몇 년 전부터 많이 떠돌던 새 세탁기를 사는 스티브 잡스 가족의 이야기입니다.

 

Design is not limited to fancy new gadgets. Our family just bought a new washing machine and dryer. We didn’t have a very good one so we spent a little time looking at them. It turns out that the Americans make washers and dryers all wrong. The Europeans make them much better – but they take twice as long to do clothes! It turns out that they wash them with about a quarter as much water and your clothes end up with a lot less detergent on them. Most important, they don’t trash your clothes. They use a lot less soap, a lot less water, but they come out much cleaner, much softer, and they last a lot longer.

We spent some time in our family talking about what’s the trade-off we want to make. We ended up talking a lot about design, but also about the values of our family. Did we care most about getting our wash done in an hour versus an hour and a half? Or did we care most about our clothes feeling really soft and lasting longer? Did we care about using a quarter of the water? We spent about two weeks talking about this every night at the dinner table. We’d get around to that old washer-dryer discussion. And the talk was about design.

We ended up opting for these Miele appliances, made in Germany. They’re too expensive, but that’s just because nobody buys them in this country. They are really wonderfully made and one of the few products we’ve bought over the last few years that we’re all really happy about. These guys really thought the process through. They did such a great job designing these washers and dryers. I got more thrill out of them than I have out of any piece of high tech in years.

 

영어라서 거부감 느끼시는 분들이 간혹 있으셔서 간단하게 해석해보자면…

디자인은 단지 예쁜 장식에 그치는 것이 아닙니다. 우리 가족은 최근에 새 세탁기와 건조기를 샀어요. 우린 살만한 좋은 물건이 없어서 이리 저리 살펴보는데 약간 시간을 썼지요. 그러면서 보았더니 미국 사람들은 세탁기와 건조기를 순 엉터리로 만들고 있다는 걸 알았습니다. 유럽 사람들은 그에 비해 훨씬 나은 제품을 만들고 있구요. 하지만 그건 시간이 두 배나 걸리더군요! 알고보니 유럽식 세탁기는 물을 1/4 밖에 안쓰고 그래서 옷에는 세제 찌꺼기가 훨씬 더 적게 남게 됩니다. 가장 중요한 것은 그건 옷을 망치지 않는 다는 것이죠. 유럽식 세탁기는 더 적은 세제와 더 적은 물을 씁니다. 하지만 옷은 더 깨끗해지고 부드럽고 또 그 만큼 더 오래 입을 수 있게 됩니다.

우리 가족은 세탁기와 관련된 이해득실에 대해 잠시 이야기를 나눴습니다. 디자인에 대해서도 이야기를 했고, 우리 가족에게 어떤 가치가 중요한지에 대해서도 이야기했죠. 우리 식구들이 과연 세탁하는데 한 시간 반이나 걸리는 것과 한 시간만에 세탁이 끝나는 것을 비교하는게 가장 중요하다고 생각했나? 아니면 옷을 더 오래 입을 수 있고 세탁하고 나면 더 부드러운 감촉이 드는지가 중요한가? 물을 적게 쓰는 것에 대해서는 생각해 보았나? 우리는 저녁 식사 시간마다 이런 이야기를 하느라 보름을 보냈습니다. 우리는 구닥다리 세탁기에 대한 토론을 해나갔습니다. 그리고 그 이야기는 주로 디자인에 대한 것들이었죠.

우리는 결국 독일 밀레사의 제품을 사는 것으로 결론을 내렸습니다. 그 회사의 제품은 무척 비쌉니다. 하지만 그건 순전히 미국 사람들이 이 회사 제품을 많이 사지 않기 때문입니다. 이 세탁기들은 상당히 잘 만들어졌으며, 그 몇 가지 중 하나를 사고서 우리 가족은 유래가 없을 만큼 많이 행복해 했습니다. 이 회사에서 일하는 친구들은 프로세스를 잘 압니다. 그래서 세탁기와 건조기를 디자인함에 있어 엄청난 역량을 보입니다. 이것들을 사면서 전 지난 몇 년간 하이테크 제품을 살 때 느꼈던 것 보다도 더한 긴장감을 맛보았습니다.

아마 ‘포스트 잡스’, ‘포스트 애플’을 염두에 두고 있으면서 여기까지 읽으시면 제가 무슨 말을 하려는지 파악되셨으리라 생각됩니다.4 제품을 만들 때 무엇을 가장 중요하게 생각해야 하느냐는 겁니다. 좋은 제품은 – 그것이 기획으로부터 출발하든 디자인으로부터 출발하든 – 단 하나의 지상 목표를 위해서 디자인될 수 없다는 것입니다. 그것은 사용자에게는 1차적인 것이 아니라 2차, 3차적으로도 훨씬 더 나은 선택이 될 수 있는 무언가를 제공할 수 있어야 하고, 그리고 만드는 입장에서는 제품에 집중하기 이 전에 사용자가 그 제품을 어떻게 쓸 것인지에 대한 프로세스에 집중할 수 있어야 합니다. 그리고 그것을 통합하는 것은 사실 그렇게까지 어려운 것은 아닙니다. 왜냐면 기획자들이 하는 일이 그 것 아닌가요?

원문에서 사실 가장 중요한 단어가 등장했습니다. 그것은 eco-value 니, 인문학이니 하는 그런 거창하거나 어려울 필요가 없는 단어입니다. 바로…

“CARE”.

정말 잘 만든 제품. 소비자들이 환호하고 열광할만한 제품을 만들기 위해서는 같은 분야가 아니더라도 정말 잘 만들어진 제품을, 제 값 한다는 제품을 써 보는 게 중요할 것 같습니다. 그리고 그 좋은 제품이 왜 좋은지를 본인이 깨닫지 못한다면 정말 좋은 제품을 만들 수도, 기획할 수도, 디자인할 수도 없을 것입니다.

적어도, 지금 국내에서는 애플의 경쟁자를 자처하고 싶어 안달하는 기업은 적지 않게 있습니다. 하지만 제품을 기획하는 최초 단계와 그 중점이 아쉽게도 “현재 돌릴 수 있는 생산 라인을 총 집결하는 방법”에 국한되어 있다면, 소비자가 care하는 가치를 제공해주기는 커녕 그냥 정크 푸드 만드는 공장을 열심히 돌리는 짓과 다름이 아니라는 겁니다.

애플에서 뭐 하나만 내 놓으면 온 대한민국이 난리간 나는데, 2년이 넘도록 난리만 나면서 왜 쓸만한 제품이 나오지 않는지가 궁금한 변방의 어떤 블로거가 또 쓸데없이 한 마디 하고 이렇게 하루가 저물어 갑니다.

 

ps. 잡스의 이런 저런 이야기를 다루는 책이 서점에 진짜 많은데, 전 ‘해적의 리더십’이라는 말 듣고는 완전 웃겨서 속으로 이런 생각을 했어요.

“그냥 지랄 옆차기를 하세요”

  1. Liberal Arts
  2. the Humanities
  3. 그것이 문예를 말하는 인문학이든, 교양을 말하는 인문학이든 말이죠
  4. 아직도 영문을 모르겠다면, 미안합니다만 그 꿈은 접으시는게 좋을 것 같습니다.

20110504 :: 아이폰 사파리에서 북마클릿을 쉽게 만들자

북마클릿에 대해서는 먼저 한 번 설명한 적이 있으므로, 자세한 설명은 생략.

개인적으로는 파이어폭스나 구글 크롬의 확장 기능보다도 어지간한 기능은 북마클릿으로 만들어 쓰는 것을 좋아합니다. 왜냐하면 1) 뭔가 설치하는 것은 싫고 2) 왠만한 브라우저에서는 다 동작하기 때문이지요. 특히, 아이폰/아이패드의 사파리에서는 이러한 북마클릿은 매우 유용한 경우가 많습니다. 예를 들어, 쓸데없는 이미지가 너무 많은 사이트를 깔끔하게 텍스트만 추려서 뽑아 줄 수도 있고, 읽고 있는 페이지를 나중에 읽을 요량으로 Read it Later나 Instapaper 등의 서비스에 등록하도록 하는 기능 들은 꽤나 쏠쏠하지요.

문제는 이런 용도로 미리 만들어서 웹 페이지에 붙여 놓은 북마클릿을, 아이폰 사파리의 북마크 모음에 집어 넣는 일이 쉽지 않다는 게 큰일입니다. 왜냐하면 javascript: 로 시작하는 북마클릿 링크는 아이폰 사파리에서는 링크를 터치하고 있어도 해당 링크의 주소를 복사할 수 없기 때문이지요.

그래서 어딘가의 PC에서 해당 북마클릿의 코드를 별도로 메일로 전송한다든가 하는 방법을 통해서 아이폰 사파리에 겨우 겨우 설치했습니다만, 이 번 기회에 좀 더 쉬운 방법으로 설치할 수 있도록 해 보겠습니다.

당연히 PC에서는 이 방법보다는 그냥 북마클릿 링크 자체를 북마크바로 끌고 가면 끝이니까, iOS용 브라우저에서만 필요한 팁입니다.

1. 먼저 아래의 링크를 클릭합니다.

[북마클릿 도우미]

2. 이 링크는 페이지의 모든 북마클릿 링크의 색을 노랗게 마크합니다.

3. 이제 이 노란링크를 다시 클릭합니다.

4. 아무 변화가 없습니다만, 확실히 노란 박스를 잘 클릭했다면, 이제 이 페이지를 책갈피에 추가합니다. 책갈피 이름은 아이폰릿 (iPhonlet) 정도가 적당하겠네요.

5. 책갈피 추가를 완료한 다음, 다시 방금 추가한 책갈피를 편집합니다. 책갈피 이름 아래 주소를 잘 보시면 http://soooprmx.com/wp/arc……/javascript:……… 로 되는데 javascript:/ 앞까지 빨간 글씨로 표시한 부분을 지우고 완료를 누르면 됩니다.

 

이제 아이폰 북마크에 아이폰릿이 생겼습니다. 어디든 북마클릿을 소개하는 페이지에서 북마크를 열고 아이폰릿을 실행해주면 간단히 자바스크립트 링크코드를 추출할 수 있겠지요. 위의 사용법과 똑같은 방식으로 주소를 획득, 책갈피에 추가하고 다시 주소의 javascript: 앞 부분까지의 글자를 모두 삭제해주면 됩니다.

 

개인적으로 북마클릿을 새로 추가하거나 할 때마다, 무려 아이폰 메모앱으로 자바스크립트 코드를 일일이 작성해서 붙여 넣은 아픔이 있기에 눈물을 머금고 북마클릿으로 만들어 보았습니다. 관심이 있으신 분이라면 분명 도움이 될 듯 하네요.

20110429 :: 네트워크 기초 상식

1
글은 집에서 로컬 네트워크를 구성해 PC간에 자료를 주고 받거나 NAS 사용해 보고자 하는 분들을 위한 강좌글입니다만 너무 분량이 많아 쪼개서 쓰기로 했습니다. 글의 제목은 강좌가 끝날 무렵 다시 수정할 예정입니다.

사실 요즘 눈 코 뜰 새 없이 바쁘지만, 오늘은 야간에 철야를 하면서 주로 하는 일이 ‘기다리는 일’인 관계로 글을 하나 시작해 보고자 합니다. 사실 꽤 분량이 될 것으로 예상이 되어 연재 형태가 될 듯 해서 또 걱정입니다. ‘다음 편에 계속’이라고 보기 좋게 글 말미에 떡하니 써 놓고는 그 문제의 다음 편은 거의 ‘언제 한 번 올리도록 하겠다’가 되어 연재가 제대로 의미를 가지고 이어지지는 않은 적이 많았기 때문입니다. 하지만 5~6년 전에 써 놓은 조각 글들이 결국은 하나의 연재가 되어 알음알음으로 많이들 찾아 보고 최근까지도 답글이 달리는 것으로 봐서는 완성해 놓고 나면 의미 있는 작업이 될 듯도 합니다. ‘아주 쉽게’ 풀어 쓴 다는 것이 말처럼 쉽지 않고 또 늘상 만연체가 되어버리는 글쓰기 습관 때문에 얼마나 잘 될지 모르지만 그래도 한 번 시작해 보고자 합니다.

이 번에 이야기해보고자 하는 건 가정용 네트워크에서 PC끼리 혹은 PC와 스마트폰 사이에 파일을 공유하는 방법입니다. 뭐 사실은 많은 분들이 이렇게 하고 계시기도 하지만, 가정에서 공유기를 사용하면서 동시에 여러 대의 PC를 사용하면서 네트워크를 통해서 파일을 공유하고 주고 받는 환경을 구성하고 계신 분들이 또 의외로 많지 않으셔서 작게 나마 도움이 되었으면 합니다. 게다가 최근에 급격히 가격대가 착해진 NAS에 대해서도 욕심을 좀 내시는 분들이 있고, 이를 사용하려면 결국은 집에 로컬 네트워크를 구성해야 하기 때문에 기본적인 개념에서 출발해서 하나 하나 알아가는 형태로 시작해 보고자 합니다. 갈 길이 멀기 때문에 제 스스로 조급한 마음이 조금 들 것 같지만, 사실 알고보면 전 다 아는 이야기이기 때문에 그냥 느긋하게 맘 먹고 이야기를 이어 나가 보겠습니다.

가장 먼저 하고 싶은 이야기는 각 컴퓨터에 있는 정보에 접근하기 위한 기초. 바로 ‘컴퓨터의 주소’에 대한 이야기입니다.

IP주소

뭐, ip주소라는 말은 다들 많이 들어보셨으리라 생각됩니다. 안 들어보셨으면 지금 들어보시면 됩니다. (?) IP는 Internet Protocol의 줄임말인데, 별로 의미가 있는 말은 아닙니다. 흔히 ip주소를 그냥 ip로만 이야기하는 경우가 있는데 정확하게는 ip 주소라고 하는게 맞겠습니다. 아무튼 이 ip 주소라는 것은 네트워크에 연결되는 각각의 컴퓨터가 가지는 고유 주소입니다. 0~255까지의 숫자를 4개 조합하여 사용하게 됩니다. 이론상으로는 0.0.0.0 ~ 255.255.255.255가 됩니다. 따라서 이런 형태의 ip 주소는 대략 43억개 정도가 존재할 수 있습니다. 1 흠 43억개도 무척이나 많지만 세상에는 컴퓨터가 43개보다도 더 많이 있습니다. (이와 관련된 이야기는 조금 있다가 할게요) 아무튼 인터넷에 존재하는 컴퓨터들은 각자가 모두 숫자로 만들어진 고유한 주소를 가지고 있다고 보면 됩니다.

여기서 말하는 ‘인터넷 상의 컴퓨터’는 보통의 경우에는 ‘서버’를 말합니다. 그리고 그 각각의 서버들이 가지고 있는 주소가 바로 IP 주소입니다. 예를 들면 구글의 서버 중 한대는 72.14.203.147 이라는 주소를 가지고 있습니다. 2 이 ip 주소를 인터넷 주소창에 입력하면 구글의 홈페이지가 뜨는 것을 실제로 확인할 수 있지요.

그런데 여러분의 컴퓨터도 인터넷에 물려져 있습니다. 그러니까 네트워크 카드가 유선이든 무선이든 컴퓨터에 들어있고 이를 통해서 인터넷에 접속하고 있다는 이야기이지요. 물론 그러니까 지금 이 글을 보고 있는 것 아니겠습니까. 그러면 여러분의 컴퓨터의 IP 주소는 어떻게 될까요?

이를 확인하기 위해서는 ipconfig 라는 명령을 사용합니다. 절차는 간단해요.

  • 시작 메뉴에서 ‘실행’을 선택한 다음 cmd 라고 치고 엔터를 입력합니다.
  • 도스 창 같은 참 못생긴 창이 하나 뜹니다. 그 창에다가 ipconfig 라고 입력하고 엔터칩니다.
  • 뭔가 주르르륵 나오는데요, 스크롤을 조금만 올려보시면 “로컬 네트워크 연결”이나 “무선 네트워크”라는 이름 아래에 지금 사용하고 있는 컴퓨터의 네트워크 연결 정보가 나옵니다. 그 중에 IP Address라는 항목이 지금 사용하는 컴퓨터의 IP 주소입니다. 3

만약, 집에서 혹은 사무실에서 인터넷 공유기를 물려서 사용하고 있는 경우라면 이 IP 주소가 192.168.xxx.xxx 라는 식으로 되어 있을 가능성이 높습니다. 이 192.168.~ IP 주소 대역은 사설 네트워크에서 각 컴퓨터를 구성하기 위해 분배하여 사용하는 주소입니다. 그리고 아쉽게도 이 ip 주소는 로컬 네트워크4에서 각 컴퓨터를 구분하기 위한 주소이므로 이 주소를 가지고는 인터넷에서 여러분을 딱 찝어서 찾아낼 수가 없습니다. 다만 역시 이 사설 IP의 경우에도 같은 망 구성 내에서는 IP는 ‘고유해야’ 하므로 똑같은 IP 주소를 가질 수는 없습니다.

다시 구글 서버로 돌아가 보겠습니다. 구글 서버가 가지고 있는 IP 주소는 이른 바 공인 IP입니다. 이 공인 IP는 당연히 고유 주소이고, 전세계에 통용됩니다. 전세계 어디서든 이 ip 주소를 통해서 구글 서버에 접근할 수 있다는 것입니다. 하지만 아마도 여러분의 IP는 로컬 네트워크 상의 주소이므로, 인터넷 공간에서는 여러분의 PC를 직접 찾을 수가 없습니다. 로컬 네트워크는 인터넷 세계에서는 아주 산간 벽지 마을이라고 생각하면 이해가 좀 편하려나요.

게이트웨이

게이트웨이는 말 그대로 관문입니다. 만약 가정이나 사무실에 인터넷 공유기를 사용하여 로컬 네트워크를 구성하였다면 해당 로컬 네트워크에서 1차적인 게이트웨이는 바로 그 공유기가 되겠지요. 물론 설정하기 나름이라 다 다를 수도 있지만 일반적인 공유기를 사용하고 있고, 별도의 설정을 하지 않았다면 이 공유기의 주소는 192.168.0.15일 가능성이 높습니다. 만약 여러분의 PC의 ip 주소가 123.159.123.98 이라면 게이트웨이는 맨 마지막 마디의 주소가 1일 확률이 가장 크다는 것이지요.

게이트웨이 역할을 하는 공유기는 사실 많은 역할을 합니다. 공유기에 물려진 PC에 사설 IP를 부여하고, 각각의 IP 주소가 가지고 있는 컴퓨터가 로컬 네트워크 외부에 있는 다른 컴퓨터와 주고 받는 데이터를 분류하여 제대로 된 PC로 전달하는, 그러니까 교통정리를 합니다. 우리가 집에서 로컬 네트워크를 구성하기 위해 구입해서 설치하는 공유기들은 아주아주 싼 가격이지만 이런 기능들을 모두들 훌륭히 수행하고 있다는 겁니다.

그리고 아마도 우리의 컴퓨터는 이렇게 우리 눈에 보이는 공유기를 타고 나가 인터넷에 연결되지만, 사실상 어디있는지 짐작도 잘 되지 않는 미지의 게이트웨이들을 아주 여럿 거쳐 나가게 됩니다. 이 과정은 의외로 상당히 복잡합니다. 인터넷은 물리적으로는 수많은 갈림길과 교차로가 있는 어마어마하게 복잡한 전선의 미로인 셈입니다. 하지만 이런 복잡성은 특정 지점의 게이트웨이가 손상되는 등 정상적으로 동작하지 않을 때 우회할 수 있는 경로가 어디엔가는 존재하는 경우가 많아서 지진이 난다는 가 하는 큰 난리가 난 지역에서도 전화는 안돼도 인터넷은 되는 것이지요.

서브넷 마스크

서브넷 마스크에 대해서는 사실 상 네트워크 관리자가 아닌 다음에는 그다지 신경쓰지 않아도 됩니다. 일반적으로 서브넷 마스크는 네트워크 설정 시 255.255.255.0의 값을 가집니다. 이 의미는 ip 주소가 aaa.bbb.ccc.ddd 라고 할 때 ddd 대역에 대해서는 서브 네트워크인 로컬 네트워크가 임의로 사용하는 ip이며 그 이상의 aaa.bbb.ccc 대역은 필터된다는 의미입니다. 의미라고는 해도 사실 와 닿지가 않는데요, 이를테면 192.168.0.xxx 라는 ip에 대해서 두 개의 다른 서브 네트워크가 존재해, 각각의 ip 대역에 대해 구분을 짓게 될 때나 사용된다고 생각하면 됩니다. 하지만 일반적으로 여러분들은 집에서 공유기 하나를 사용하여 구성하는 로컬 네트워크에서는 0~255까지의 모든 대역을 사용해도 무방하므로 신경 쓸 필요가 없습니다. 각각의 pc에서 ip를 수동으로 관리할 때는 그냥 서브넷 마스크에는 255.255.255.0 을 쓴다라고만 알고 있으면 됩니다.

DNS

DNS는 사실 상 로컬 네트워크 구성과는 무관합니다. 이는 www.google.com 과 같은 도메인 주소와 관련이 있습니다. 인터넷에 존재하는 컴퓨터들은 모두 고유한 IP를 가지고 있다고 했습니다. 하지만 이 IP 주소는 숫자로 구성되어 있어서 기억하기가 힘듭니다. 그래서 보다 ‘인간친화적’인 구분 방법이 필요해졌는데, 이것이 바로 ‘도메인 네임’입니다. 우리가 흔히 사용하는 ‘인터넷 주소’는 이 도메인네임을 이야기합니다.

DNS는 어떤 도메인 네임이 어떤 IP 주소와 연결되는지에 대한 정보를 저장하고 있는 서버입니다. 만약 우리가 인터넷 브라우저의 주소창에 www.naver.com을 입력한다면 다음과 같은 순서를 거치게 됩니다.

  1. PC는 먼저 네트워크 설정에서 지정된 DNS의 주소를 가지고 DNS 서버에게 입력된 ‘www.naver.com’에 해당하는 ip를 물어보게 됩니다.
  2. DNS서버는 www.naver.com 에 할당되어 있는 ip는 222.122.195.5라고 알려줍니다.
  3. PC의 인터넷브라우저는 이 값을 가지고 222.122.195.5 의 ip로 접속을 하게 됩니다.
  4. 해당 주소에 있는 네이버 서버는 네이버 메인화면을 구성하는데 필요한 html 파일과 기타 파일들을 전송해 줍니다.
  5. PC의 인터넷 브라우저는 해당 파일을 해석하여 네이버의 메인화면을 화면에 그려줍니다.

DNS 주소는 통상 ISP 사업자6가 기본적으로 제공하는 것들이 있습니다. 보통 이런 서비스에 가입해서 인터넷을 사용하면 ip 주소를 자동으로 할당받게 되는데, 이 때 DNS 주소도 함께 할당 받습니다.

물론 DNS 주소는 수동으로 설정할 수 있습니다. 구글도 이러한 DNS를 운영하고 있는데, 주소가 외우기 쉽게 8.8.8.8, 8.8.4.4 와 같이 되어 있습니다. 구글의 DNS 나 오픈DNS 와 같은 서비스를 사용하는 것도 좋지만 아무래도 외국에 있는 서버이다 보니 응답 속도가 조금은 느릴 수 있습니다. DNS에 접속하여 ip주소를 받아오는 과정은 사실상 매우 눈깜짝할 사이에 일어나는 일이긴 합니다만, 엄밀히 이야기한다면 그래도 속도가 느린 것은 사실이지요. 굳이 오픈 DNS를 사용할 일은 그리 많지 않은 것 같습니다만, 일부 회사와 같은 곳에서는 이 DNS를 통해 특정 웹사이트 주소를 차단하는 게 가능합니다. 이런 경우라면 오픈 DNS를 사용하면 해당 웹 주소의 ip 주소를 가져오는 것이 가능해서 우회하는 것도 가능합니다.

구글 크롬이나 파이어폭스와 같은 브라우저들은 DNS pre-fetch 라는 기술을 사용합니다. 이는 DNS에 등록된 ip 주소가 사실 자주 바뀌는 일은 거의 없으므로, 한 번 가져온 ip에 대해서는 저장하고 있다가 해당 주소의 ip로 바로 접근합니다. DNS를 거치는 과정을 생략하므로 웹페이지 접속에 걸리는 시간을 조금이라도 더 줄일 수가 있는 것이지요. (그래서 이 경우에는 차단되어야 할 웹 사이트가 그냥 열리는 경우도 가끔 있습니다.)

이상으로 컴퓨터에서 사용되는 IP 및 기타 네트워크 주소에 대해서 간략하게 살펴보았습니다. 다음 글에서는 공유기를 설치하는 방법과 설정하는 법에 대해서 간단히 살펴보도록 하겠습니다. 물론 오늘 글의 내용만 어느 정도 이해하시면 공유기 설치는 사실 진정으로 껌입니다. 그럼 다음 글에서 뵙겠습니다.

 

  1. 이렇게 4마디로 끊어서 관리하는 ip 주소 체계를 ipv4라고 합니다. ipv4의 주소 체계는 2011년 2월 경 완전히 다 들어차 있는 상태입니다. 물론 사람들은 이런 날이 오리라고 이미 예견했기 때문에 ipv6라는 주소 체계를 별도로 만들어 두었습니다. ipv6는 자그마치 340,000,000,000,000,000,000,000,000,000,000,000,000개의 주소를 가질 수 있기 때문에 우리가 살아 있는 동안에는 ip 주소가 모자랄 일은 거의 없을 듯 합니다.
  2. 이는 명령 프롬프트에서 nslookup google.com 이라는 명령을 사용하면 금방 알 수 있습니다.
  3. 행여 만일의 상황을 대비해서 이 ip/subnet mask/gateway 주소들은 는 어디다 메모해 두는 것이 좋습니다.
  4. 사무실 같은 곳에서 공유기를 통해서 구성한 네트워크
  5. 만약 유선랜으로 공유기와 연결되어 있다면 이 주소를 브라우저의 주소창에 넣어보세요. :)
  6. KT, SK와 같이 유선 인터넷 서비스를 제공하는 사업자