hosts 관련 질문입니다..

joongone의 이미지

서버의 /etc/hosts 파일의 내용은

2xx.3x.2x.1xx aaa.bbb.com
127.0.0.1 aaa.bbb.com aaa localhost.localdomain localhost

이거 입니다.

서버의 IP주소를 뿌려주는

java -cp ViewIP.jar ViewIP

을 실행하면 실행 결과가

This System's IP Address : 2xx.3x.2x.1xx

로 나와야하는데

This System's IP Address : 127.0.0.1

으로 나옵니다..

제가 원하는 값을 가지기 위한 방법이 없을까요??ㅜㅜ

innu의 이미지

네트웍 인터페이스 확인
라우팅 테이블 확인 하시면 거의 나오지 않을까 싶습니다.

Debian Spirit !!!

ngtao의 이미지

joongone wrote:
서버의 /etc/hosts 파일의 내용은

2xx.3x.2x.1xx aaa.bbb.com
127.0.0.1 aaa.bbb.com aaa localhost.localdomain localhost

이거 입니다.

위의 설정 대신에, 특별한 사정이 없다면,

127.0.0.1          localhost.localdomain  localhost
2xx.3x.2x.1xx      aaa.bbb.com aaa
와 같은 일반적인 방식으로 설정하시면 될 것으로 보입니다.

곧, aaa.bbb.com이 유일한 IP 주소로 매핑될 수 있도록 설정하는 것입니다.
시스템에게 혼동을 주지 않기 위함입니다.

joongone wrote:
서버의 IP주소를 뿌려주는

java -cp ViewIP.jar ViewIP

을 실행하면

일반적으로는 시스템의 HOSTNAME을 파악한 후 이 HOSTNAME을 인자로 하여 IPv4의 경우에는 gethostbyname(host_name) 함수를 주로 사용합니다.

이 함수를 구현하거나 시스템의 함수를 사용하는 경우에는 (시스템 환경 설정에 따라 그 순서가 다를 수 있지만) 일반적으로는

    1. Caching 데몬이 구동되고 있으면, 그 cache에서, 2. (cache에 존재하지 않는 경우) /etc/hosts에서
    3. 모두 존재하지 않는 경우, DNS 질의를 통해서
IP 주소를 파악하여 리턴하는 동작을 수행합니다.
여기에서 Caching 데몬은 주로 'nscd'의 이름을 갖습니다.
nscd : 'name service cache daemon'

joongone wrote:
실행 결과가

This System's IP Address : 2xx.3x.2x.1xx

로 나와야하는데

This System's IP Address : 127.0.0.1

으로 나옵니다..

서버 시스템 자신의 IP 주소만을 파악하는 것이 목적이라면, 위의 /etc/hosts 파일에서
aaa.bbb.com에 대한 IP 주소가 유일하도록 설정하는 것으로 원하는 결과를 얻을 수 있을 것입니다.

단, 주의하실 사항은 서버에 nscd와 같은 caching 데몬이 구동되고 있다면,
/etc/hosts 파일의 설정을 변경한 후에 nscd 데몬을 restart하고 나서 그 결과를 확인해야 합니다.
nscd가 가진 이전의 cache된 데이터가 먼저 조회될 수 있기 때문입니다.

-----------------------------------------------

[/]
joongone의 이미지

말씀 하신데로 nscd 을 끄고 했는데도 그러네요.ㅜㅜ

혹시 다른 방법은 아시는것이 없으시나요?? ㅜㅜ

ngtao의 이미지

joongone wrote:
말씀 하신데로 nscd 을 끄고 했는데도 그러네요.ㅜㅜ

혹시 다른 방법은 아시는것이 없으시나요?? ㅜㅜ

역시 이전과 동일하게 127.0.0.1이 출력되고 있다면, 시스템의 hostname 환경설정을 확인해 볼 필요성이 있는 것으로 추정됩니다.

$ hostname
$ domainname

위의 명령으로 시스템 자신이 인식하고 있는 자신의 HostName 설정 값을 확인해 보시기 바랍니다.

만일 `hostname` 명령에 의해 'aaa.bbb.com' 또는 'aaa'가 출력되지 않고, 다른 값이 출력된다면 위와 같은 오동작 결과가 나올 수도 있습니다.

이는 앞서 설명드렸던, 시스템 자신의 IP 주소를 파악하기 이전에 시스템 자신의 HOSTNAME 값이 필요한 것에 연유하는 것으로,
만일 이 HOSTNAME이 전혀 엉뚱하게 지정되어 있는 상태라면, 시스템 자신의 IP 주소를 정확히 파악할 수 없게 됩니다.

ngtao wrote:
일반적으로는 시스템의 HOSTNAME을 파악한 후 이 HOSTNAME을 인자로 하여 IPv4의 경우에는 gethostbyname(host_name) 함수를 주로 사용합니다.

만일, `hostname`에 의해 출력되는 값이 'aaa.bbb.com'이나 'aaa'가 아니라면, 다음과 같이 시스템의 HOSTNAME을 변경 설정하시면 됩니다.

$ hostname aaa
$ domainname bbb.com

그리고 위와 같이 명령어에 의한 설정은 시스템이 동작 중에만 유효하며 위 설정에 의해 문제가 해결되었다면, 시스템 configuration 파일에 반영해 주셔야 합니다. 시스템이 재부팅되는 경우에 이 설정이 반영되어 시스템이 running될 수 있도록 하기 위함입니다.
configuration 파일은 시스템 OS마다 상이하므로, 사용하고 계신 OS에서 요구하는 설정을 해 주시면 됩니다.

참고하시기 바랍니다...

PS> ViewIP.jar가 어떤 방식으로 IP 주소를 파악하는 알고리듬을 가졌는지는 아직 확인할 수는 없습니다. 사실 시스템의 IP를 파악하는 방법이 여러가지 가능한데, 보편적으로 모든 Unix 시스템 상에서 동작하도록 구현했다면, 위에 설명한 방식을 따라 시스템 OS가 제공하는 API를 사용하여 구현했을 것으로 여겨집니다.... 만일, 이러한 구현방식을 떠나 직접 네트워크 인터페이스에 접근해서 IP 정보를 파악하는 방식이라면, 위의 설명이 적합하지 않게 됩니다... OS마다 네트워크 인터페이스 구조가 다르므로 이러한 방식으로 구현하지는 않았을 거라 여길 뿐입니다.

------------------------------------------------------

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.