장치 대 네트워크 인터페이스 IP 주소


11

다음의 관계를 이해하려고합니다.

  • "네트워크화 된"Linux 장치; 과
  • 해당 장치에있는 물리적 NIC 카드 ( "네트워킹"기능 제공) 과
  • 다양한 이더넷 / 무선 인터넷 네트워크 인터페이스 ( eth0, eth1, wlan0등); 과
  • IP 주소 및 포트

내가 수집 한 바로는,이 나타납니다 각 인터페이스 (다시 것을 eth0, eth1, wlan0, 등) 고유 한 IP가 할당됩니다. 내 컴퓨터의 의미는와 eth0다른 IP를 가질 것 wlan1입니다.

그러나 이것은 네트워크로 연결된 장치 전체가 전체 장치에 대해 단일 IP를 수신한다는 것을 이해하지 못합니다.

그래서 어느 것입니까? 장치가 모든 인터페이스에서 사용하는 IP 1 개를 얻습니까, 아니면 각 인터페이스가 고유 한 IP를 얻습니까? 각각 고유 한 인터페이스를 얻는 경우 해당 인터페이스에서 사용 가능한 포트 수는 어떻게 결정됩니까?


인터페이스 연결 방법 / 위치는 3 개의 다른 이더넷 LAN과 같이 IP 주소에 영향을 미치므로 인터페이스마다 주소가 다릅니다. 이 주소도 기본 소스 주소가됩니다.
Skaperen

답변:


10

IP 트래픽이 통과하는 경우 각 네트워크 인터페이스에는 고유 한 IP 주소가 있습니다.

예를 들어, 대부분의 가정 및 / 또는 소규모 사무실에있는 라우터 / 모뎀 장치를 예로들 수 있습니다.

라우터 내부의 WiFi / 이더넷에 관계없이 컴퓨터 / 노트북에 연결됩니다. 이들은 일반적으로 개인 주소 범위 191.168.0.0 - 192.168.255.254또는 때로는 10.0.0.0 - 10.255.255.254있습니다. 데스크탑 / 노트북 / 태블릿은 장치의이쪽에 연결되며 장치와 동일하지는 않지만 동일한 범위의 자체 및 IP 주소를 갖습니다.

라우터 / 모뎀의 외부에는 일반적으로 서비스 제공 업체가 장치에 자동으로 할당하는 완전히 별개의 IP 주소가 있습니다. 이것은 주소 98.23.45.62가 연결되어있는 동안 모뎀 / 라우터에 고유 한 라우팅 가능한 주소 입니다.

이와 같은 소형 모뎀 / 라우터 http://192.168.0.1는 이더넷 포트가 많은 웹 브라우저 (예 :)를 통해 장치를 관리하기위한 사용 설명서에 인용 된 하나의 주소 만있는 것처럼 보이기 때문에 혼동 될 수 있습니다 . 라우터의 단일 이더넷 포트를 여러 포트로 분할하고 WiFi 브리지를 연결하기 위해 장치에 라우터에 네트워크 스위치 태그가 붙어 있기 때문입니다.

동시에 라우터 / 모뎀의 외부에는 서비스 제공 업체가 자동으로 구성한 IP 주소가 있으므로 사용자가 볼 수 없을 것입니다. ( 내 정보 를 찾으려면 Google에 내 IP 주소 를 입력 하십시오).

다이어그램이 도움이 될 수 있습니다.

                                                                 +--------+
                                                                 | laptop |
                                                                 +--------+
+-----+                +-------------+              +--------+       | 10.0.0.2
|     |98.23.45.61     |             |10.0.0.1      |        |-------+
| ISP |----------------+ modem/router|--------------| switch |
|     |     98.23.45.62|             |              |        |-------+
+-----+                +-------------+              +--------+       | 10.0.0.3
                                                                  +---------+
                                                                  | desktop |
                                                                  +---------+

보시다시피, 모뎀 / 라우터에는 각 네트워크 인터페이스마다 하나씩 두 개의 IP 주소가 있습니다. 데스크탑과 랩탑에는 라우터에 연결된 네트워킹 장치가 있습니다. 대부분의 모뎀 / 라우터에는 대부분의 랩톱과 마찬가지로 WiFi 및 이더넷 연결이 있습니다. 이더넷 케이블을 랩톱에 연결하고 랩톱의 WiFi를 활성화 및 구성하는 경우 10.0.0.x주소 범위에 두 개의 IP 주소 (각 장치마다 하나씩)가 있습니다. 그것은 단지 당신에게 문제를 생각하게 할 것입니다-하지 마십시오.

포트는 대상 IP 주소에 연결된 숫자입니다. 사무실 교환 대의 전화 내선 번호와 비슷하며 트래픽을받을 서비스를 결정합니다. 16 비트 숫자이며 최대 65535를 제공합니다. 이들 중 아주 작은 하위 집합 만 사용됩니다. 일부 포트 는 포트 80의 http 트래픽 및 포트 22의 보안 셸 (ssh)과 같이 잘 알려진 포트 로 미리 할당됩니다. 이 포트는 장치 제조업체에서 설치 한대로 관련 서비스가 장치에서 실행중인 경우에만 열려 있고 트래픽을 수신 대기합니다. .

위의 모뎀 라우터의 경우 웹 브라우저를 사용하여 장치를 관리 할 수 ​​있도록 웹 서버가 실행 중이므로 포트 80이 내부에서 수신 대기합니다. 일부 라우터에는 포트 22에서 수신 대기하는 ssh 서비스가 있으므로 ssh 클라이언트를 사용하여 장치를 관리 할 수 ​​있습니다. 라우터에서도 DNS 서버가 실행되므로 포트 53이 열려있을 것입니다.

해당 장치에 서비스를 설치하지 않는 한 랩톱에는 포트가 없을 것입니다. 위의 다이어그램에서 데스크탑 PC에 ssh 서버 서버를 설치하여 데스크탑에서 포트 22를 열 수있는 방화벽이 허용됩니다. 그러면 랩톱이 데스크탑의 포트 22로 ssh되어 로그인 할 수 있습니다.

따라서 장치의 포트 수는 해당 장치에서 실행중인 서비스 수, 해당 서비스 구성 및 방화벽 구성으로 결정됩니다.

인터넷의 어딘가에서 원격 사용자가 액세스 할 수있는 위의 예에서 데스크탑에서 ssh 서버를 실행하려면 내부 주소가 많지만 외부 ( 98.23.45.62) 가 하나만 있기 때문에 작은 문제가 발생합니다 .

이 문제를 해결하려면 라우터에서 포트 전달 이라는 기능을 구성 해야합니다. 이는 라우터가 특정 포트에 도착하는 모든 트래픽을 가져와 특정 내부 호스트 및 포트로 전달하도록 지시합니다.

이 경우 포트 22에 도착하는 모든 트래픽은 포트 22로 전달됩니다. 10.0.0.2수집 한 것처럼 포트 22 만 하나의 내부 서버로 전달할 수 있습니다.

데스크탑과 랩톱 모두에 ssh를 사용하려면 대체 외부 포트 (예 : 2022)를 수신하고 10.0.0.2포트 22 에서 랩톱으로 전달하도록 라우터를 구성해야합니다 . 원격 사용자 에있는 ssh 98.23.45.62데스크탑에 액세스하고 ssh -p 2022 98.23.45.62노트북에 액세스 할 수 있습니다.

물론 고정 IP 주소를 특별히 요청 / 구매하지 않는 한 외부 IP 주소가 변경 될 수있는 것처럼 항상 간단하지는 않습니다.


@garethTheRed에게 감사드립니다 (대리인이 있으면 투표합니다). 마음에 들지 않는 경우 몇 가지 빠른 후속 조치 : 위의 훌륭한 예를 사용하여 랩톱과 데스크톱 모두 에서 Google " What 's my IP "로 이동 하면 IP가 98.23.45.62(기본적으로 공통 라우터의 외부 IP)? 그렇다면 랩톱에서 실행되는 서버를 일어 서서 외부에서 연결할 수 있기를 원한다면 외부 / 원격 클라이언트가 라우터 뒤에있는 다른 모든 장치와 동일한 IP를 가진 경우 해당 서버에 요청하는 방법 ?!? 다시 한번 감사합니다!
Zac

예, 모든 내부 기기는 Google에서 동일한 IP 주소를 표시합니다. 유일한 IP 주소 :-) 다른 질문을 처리하기 위해 내 답변을 편집했습니다.
garethTheRed

다시 @garethTheRed 감사합니다! NAT가 내부에서 외부로하는 것과 같이 포트 전달이 외부에서 내부로 동일한 일을하고 있다고 말하는 것이 공정한가?
Zac

모호한-NAT는 "그냥 작동"한다는 점에서 더욱 역동적입니다. 포트 포워딩은 라우터 관리자가 구성해야하지만 본질적으로 라우터를 통해 트래픽을 가져옵니다.
garethTheRed

2

"장치"는 과부하 된 단어입니다. 때로는 기계를 의미하고 때로는 기계의 주변 장치 또는 인터페이스를 의미하는 데 사용됩니다.

각 네트워크 인터페이스에는 고유 한 주소가 있습니다.

각 컴퓨터에는 네트워크 인터페이스 수에 따라 0 개 이상의 주소가 있습니다.

간단한 경우, 각 물리적 네트워크 인터페이스에는 하나의 IP 주소가 있으며 시스템 에는 동일한 시스템에서 실행중인 프로그램과 대화하기 위해 프로그램이 사용 하는 루프백 인터페이스 도 있습니다 . 각 인터페이스에는 고유 한 IP 주소가 있습니다. 다수의 복잡한 설정 (본딩, 앨리어싱, 로컬 주소 등)이 가능하지만 기본 직감은 각 IP 주소가 하나의 인터페이스에 해당한다는 것입니다.

네트워크를 통해 컴퓨터에 액세스 할 때는 IP 주소를 사용하므로 실제로 해당 컴퓨터의 특정 네트워크 인터페이스에 액세스하고 있습니다. 대부분의 경우, 원격 시스템에서 하나의 인터페이스에만 접근 할 수 있기 때문에 구별이 무의미합니다. 프로그램은 모든 인터페이스에서 연결을 허용하므로 아무런 차이가 없습니다. 그러나 서버가 단일 인터페이스에서만 청취 할 수 있습니다.


1

장치에는 여러 개의 네트워크 인터페이스가있을 수 있습니다. 이것은 실제 장치 ( NIC )에 해당하거나 가상 일 수 있습니다.

사용 가능 (즉, 연결 시작 또는 청취)하기 위해서는 각 인터페이스에 IP 주소가 있어야합니다. 일반적으로 인터페이스 당 하나의 IP가 있지만 IP 별칭을 통해 여러 IP 를 가질 수 있습니다.

각 IP 주소의 개별 연결은 포트 번호로 식별됩니다. IP 프로토콜에 의해 부과 된 IP 주소 당 65536 개의 포트 제한이 있습니다. IP 앨리어싱의 한 가지 이유는이 제한을 극복하기위한 것입니다.

결국 장치는 원하는 수의 IP를 가질 수 있습니다 (이유로 커널이 관리 할 수있는 인터페이스 및 IP 수에 제한이 있다고 가정합니다). 이는 네트워크 인터페이스 수와 완전히 독립적입니다. 당신이 가진 어댑터. 반면, 장치에는 사용중인 네트워크 인터페이스 수만큼 IP가 있어야 합니다.


0

장치는 시스템 내부의 레이블로 표시되는 실제 항목입니다. 이렇게하면 시스템이 물리적 장치의 설정 / 쿼리 / 사용과 같은 다른 작업을 수행 할 수 있습니다. 커널 시스템에서 실제 하드웨어를 관리하는 드라이버가 레이블을 작성합니다.

따라서 여러 네트워크 장치를 가질 수 있으며 각 장치는 uniq 레이블로 식별됩니다 (본딩에 대해 너무 복잡하게 말하지 마십시오).

문제는 IP 주소에 관한 것입니다.

몇 가지 다른 IP 주소 클래스가 있습니다. 인터넷과 개인 주소 (일반적으로 개인 지역 (예 : 가정 / 비즈니스 네트워크))로 제한되는 인터넷의 모든 곳에서 접근 할 수있는 공용 주소가 있습니다.

일반적으로 홈 네트워크 또는 사무실 네트워크에는 공용 IP 주소와 개인 주소가 많이 있습니다 (노트북 / 모바일 / 태블릿 / 냉장고 / 토스터 / 모든 familly 구성원 사이).

물리적 하드웨어에 많은 IP 주소를 할당 할 수 있지만, 불가피한 문제에 직면하지 않으려면 잘 처리하고 기본 tcp / ip 논리를 존중해야합니다. :)

로컬 네트워크 (lan)의 예에서는 동일한 IP 주소를 가진 두 개의 하드웨어를 가질 수 없습니다. 이것은 주로 MAC 주소 (하드웨어의 고유 식별자)를 기반으로하는 이더넷 프로토콜에 기인하며 로컬 네트워크의 MAC 주소와 IP 주소 사이에는 일대일 관계가 있습니다.

공급자가 제공 한 공개 주소를 가진 두 개의 하드웨어와 로컬 네트워크 내부에있는 두 개의 하드웨어가있는 하나의 시스템을 가질 수도 있습니다. 이 머신은 일반적으로 로컬 네트워크의 모든 머신에 대한 외부 세계로가는 게이트웨이처럼 사용됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.