netcat 컴파일 시 (res_init) /tmp/cccUSCm5.o(.text+0x1b1a): undefined 에러 나는 경우

IT/Programming/Solution/Tip 2010. 11. 2. 17:18
$ cc -O -s          -DLINUX -static -o nc netcat.c
/tmp/ccDiKk2W.o: In function `main':
/tmp/ccDiKk2W.o(.text+0x159f): undefined reference to `res_init'
collect2: ld returned 1 exit status


netcat 을 리눅스에서 컴파일 할 시 위와 같은 에러가 나는 경우가 있다. (make 를 이용한 컴파일 경우도 포함한다.)
이런 경우, netcat.c 소스 파일을 직접 수정하여 헤더 선언 부분에 "reslov.h" 를 include 하면 된다.

include "reslov.h"

설정

트랙백

댓글

[telnet] getaddrinfo : localhost Name or service not known 에러 발생 시

IT/Programming/Solution/Tip 2010. 8. 31. 20:46

해당 오류는 /etc/hosts 에 hostname 이 잘못 기록되었을 때 발생한다.

<그림 1>  해당 문제점 발생.
여기서 우리는 해당 서버의 hostname 과 /etc/hosts 를 대조해볼 필요성이 있다.

<그림 2> hostname 과 /etc/hosts 의 내용 비교

아니나다를까 문제점이 존재한다. hostname은 anow인데
/etc/hosts 파일에서 127.0.0.1(localhost) 이 localhost 라는 hostname을 가르키고 있다.
/etc/hosts 파일을 수정하여 127.0.0.1(localhost) 이 "localhost" 라는 hostname이 아닌
anow 라는 hostname 을 가르키겠끔 수정하면 된다.

<그림 3> 문제 해결

/etc/hosts 에서의 문제점을 수정한 후 telnet 연결이 잘 되는 것을 확인할 수 있다.

설정

트랙백

댓글

error: public.gpg.key: import read failed. 해결 방법

IT/Programming/Solution/Tip 2010. 8. 24. 16:23
Fedora Core 3 에서 종종 일어나는 오류이다.

rpm --import /usr/share/rhn/RPM-GPG-KEY
rpm --import /usr/share/rhn/RPM-GPG-KEY-fedora

설정

트랙백

댓글

Vi/Vim Graphical Cheat Sheet

IT/Programming/Solution/Tip 2010. 6. 8. 06:48

 

 

 


Vim 을 잘 쓰면 정말 편하죠. 가끔은 간지도 나고... -_-;
개인적으로 Vim 의 사용법을 주기적으로 확인하는 것이 정말 좋다고 생각합니다.
굉장히 쓸데 없어보이는 명령들도 정말 요긴하게 쓰이는 경우가 없지 않아 있기 때문에...^^;

설정

트랙백

댓글

(NAT)외부에서 VMWARE Guest OS 에 접속하기

IT/Programming/Solution/Tip 2010. 3. 24. 19:15

같은 네트워크 망에 있는 다른 Host 컴퓨터가 자신의 VM머신의 OS에 접근 하려고 해도
Bridge로 설정하지 않는 이상 Host 컴퓨터가 다시 뿌려주는 사내 ip를 VM머신이 받아서
쓰기 때문에 포트포워딩을 따로 해줘야합니다.

우선, VM머신의 OS가 리눅스인 상황을 전제로하고 포스팅을 하겠습니다.
(Windows 경우에도 VM머신에 설치된 OS에 할당된 ip만 알면 되므로 커맨드 창(cmd)에서 ipconfig 명령어를 이용해 진행할 수 있습니다.)

[1] VM머신에 설치된 OS의 IP를 알아냅니다.

제 VM머신에 설치된 리눅스의 IP는 192.168.81.111 이네요.

[2] Host의 IP를 체크합니다.

Host OS에서 시작 - 실행 - cmd 를 실행시켜 ipconfig를 타이핑합니다.
전 지금 무선 네트워크 망에 접속되어 있는 상황입니다. (로컬 영역도 돌아가고 있네요.)
로컬 영역과 무선 네트워크 망 중 하나를 선택하여 IP Address 를 선택하시면 됩니다.
우선 전 무선 네트워크 망에서 할당해 준 IP를 선택하겠습니다.

보통 VMware 등을 설치하게 되면 가상 네트워크 어뎁터가 여러개 잡혀있습니다. 그래서 바로 ipconfig 만 치면 화면이 밑으로 많이 내려가게 되는데, 파이프 (Shift + \)  + more 명령어를 입력하여 상위 목록을 확인하면서 천천히 내려주시면 됩니다.
..(more에 관한 건 그다지 중요한 설명이 아닙니다.)

[3] 편집(Edit) - 가상 네트워크 편집기(Virtual Network Editor) 을 열어 VMnet8을 선택합니다.

여기서 Subnet IP와 Subnet mask 는 설명하지 않겠습니다. 보통 IP 대역이 192.168.x.y 라면 Subnet IP 는 192.168.x.0 입니다.
이에 관한 정보는 Subnet에 대해서 검색하셔서 공부하시길 바랍니다. -_-;

[4] NAT Settings 를 클릭합니다.

6.x 버전 VMware에서는 따로 Port Forwading 이라는 메뉴를 통해 접근했었는데, VMware 7.x 부터는 이런식으로 포트 포워딩을 세팅할 수 있습니다. 보이다시피 저는 이미 HostOS의 TCP/9999 포트를 통해서 VM머신의 리눅스의 SSH 서비스를 제공하고 있습니다. 

[5] "Add" 를 클릭하고 정보를 입력합니다.
VMware에 설치된 OS에 외부접속을 허용하려면 우선 Host OS 를 거쳐야합니다.
Host OS에서 열린 특정 Port를 통해서 VMware OS의 특정 Port에 접근하여 연결하는 방식입니다.
한 번 예로 VM머신의 OS의 웹서버를 제공하는 정보를 써보았습니다.

Host port : Host OS에서 열어 줄 포트 번호를 선택합니다.
(주의 : Host OS에서 사용하고 있는 포트 번호와 겹치게 되면 충돌이 일어나 서비스가 제대로 실행되지 않을 수 있습니다. 포트 1~1024 대역은 보통 System이 사용하는 대역이니 1024~65535 대역 중 하나의 번호를 골라 선택하시길 바랍니다.) 

Type :
TCP/UDP를 결정합니다. 특별한 경우가 아니면 TCP를 선택하시면 됩니다.

Virtual machine IP address :
[1] 번 항목에서 알아보았던 VM머신에 설치된 OS의 IP를 적습니다.

Virtual machine port :
VM머신에 설치된 OS에서 열어줄 서비스의 포트를 적습니다.
(보통 기본 값으로는, SSH서비스는 22번, Telnet서비스는 23번, Apache 등의 웹 서비스는 80번 포트를 사용합니다. 이것은 VM머신의 OS에서 따로 작업하여 포트 번호를 임의로 바꿀 수 있습니다.)

Description : 설명 란입니다. 그냥 단순히 서비스 명을 적어주심이..^^;


[6] 모든 세팅이 완료되었습니다. VM머신의 설정 창을 모두 OK 해주시고 PuTTY 등의 원격 접속 클라이언트를 사용하여 접근해 보시길 바랍니다.


PuTTY 말고도 XShell, SecureCRT 등 많은 접속 클라이언트가 있습니다. 저는 제가 이전에 설정해 놓은 SSH 서비스를 Host IP를 통해서 접근해보도록 하겠습니다. 당연히 접속할 곳은 Host IP, Host port 가 되야겠죠?

SSH 서비스를 제공하시는 분들은 SSH 서비스로, Telnet 서비스를 제공하시는 분들은 Telnet으로, 별도의 다른 서비스를 제공하실 생각이신 분들은 해당 서비스에 맞는 특수한 접속 클라이언트를 사용하시거나 Telnet 방식으로 연결하시면 접속할 수 있습니다.
 
웹 서비스를 하시는 분들은 웹 브라우저에
http://localhost:Port/  방식이나, http://HostIP:HostPort/ 방식으로 접근이 가능합니다.

TIP)
* localhost 란 자기 자신을 뜻합니다. Host OS에서 작업하기 때문에, Host IP는 자기 자신이 되겠지요. 그래서 localhost를 쓸 수 있습니다. 위의 PuTTY 등의 클라이언트에서도 localhost 문자를 Host 자신의 IP로 인식하는 클라이언트는 마찬가지로 localhost를 입력함으로써 이용할 수 있습니다. *


[7] Host OS를 통해서 VM머신의 OS의 서비스에 성공적으로 접근했음을 알 수 있습니다.



차후 이에 관한 FAQ도 따로 포스팅 하겠습니다.
좋은 하루 되시길..(__)

설정

트랙백

댓글

(레드햇9)Redhat9 에서 vmware로 인터넷이 안될 때

IT/Programming/Solution/Tip 2010. 3. 19. 20:29

(이 포스팅은 인터넷이 당연히 연결되어 있어서 논리적으로 인터넷이 되어야할 상황에 인터넷 이용이 불가한 상황에 대하여 솔루션을 제공합니다.)

vmware에서 redhat9를 설치, 운용할 때 Redhat의 네트워크 드라이브가 제대로 작동하지 않는 버그가 있다.

이를 해결하기 위해서는 /etc/sysconfig/network-scripts/ifcfg-eth0 파일을 에디터 등으로 열어 
 check_link_down() { return 1; }

를 마지막 라인에 기입해주고 재부팅을 하면 된다.

설정

트랙백

댓글