close_btn
로그인, 회원가입후 더 많은 혜택을 누리세요 로그인 회원가입 닫기

IPv4 Address 구조

 
                        

IPv4 Address 구조

 

IPv4 는 32bit 즉 2^32 = 총 4,294,967,296 개의 IP Address

 

IP는 원래는 2진수 입니다.

00000000.00000000.00000000.00000000 : 0.0.0.0

11111111.11111111.11111111.11111111 : 255.255.255.255

원래는 2진수의 IP 이지만 보기 편하도록 10진수로 변환한 것입니다.

 

보시면

2^7     2^6   2^5   2^4   2^3   2^2   2^1   2^0       [8진수]

0         0      0      0       0       0      0      0

128    64     32     16    8       4      2      1          [다 더하면 255]

128 + 64 = 192 + 32 = 224 + 16 = 240 + 8 = 248 + 4 = 252 + 2 = 254 + 1 = 255

 

여기서 2진수인 IP를 10진수를 변환하는 방법과

10진수인 IP를 2진수로 변환하는 방법을 배워보도록하겠습니다.

 

10진수인 IP를 먼저 2진수로 변환해보겠습니다.

211 =>

즉 위의 표를 참고하시면

211 > 128 -> 10000000 => 211 - 128 = 83

83 > 64 ->    11000000 => 83 - 64 = 19

19 < 32 ->    11000000

19 > 16 ->    11010000 => 19 - 16 => 3

3 < 8 ->       11010000

3 < 4 ->       11010000

3 > 2 ->       11010010 => 3 - 2 = 1

1 = 1 ->       11010011 => 1-1 = 0

으로 이렇게 계산이 가능합니다.

 

2진수인 IP를 10진수로 변환하면?

10101011 =>

10101011 -> 128

10101011 -> X

10101011 -> 32

10101011 -> X

10101011 -> 8

10101011 -> X

10101011 -> 2

10101011 -> 1

 

128+32+8+2+1 = 171

 

이렇게 되는겁니다.

 

그럼 문제 한개씩 드릴게요. 푸신 분은 제 연구방에 답 써서 올려주세요~

 

10진수 -> 2진수

218.110.20.36 을 2진수로 변환하시오.

 

2진수 -> 10진수

11010111.11010110.00101011.01011011 을 10진수로 변환하시오.

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

그럼 본격적으로

IPv4 Address 구조 에 대해 설명하겠습니다.

IPv4 의 발전과정은 이렇습니다.

 

Classfull -> Subneting -> VLSM -> CIDR -> Classless [현재]

Classfull Network (Class 기반)

이것이 처음에 만들어진 IPv4 의 구조입니다.

Classfull Network 가 어떤구조일까요.

Class 기반이라 하였으므로 말그대로.

A Class

B Class

C Class

D Class

E Class

가 있습니다.

A~C Class 는 보통 PC 클라이언트용

D는 멀티캐스트용

E Class는 실험용

으로 쓰였습니다.

 

즉 한개의 네크워크(?)의

반은 A Class 가

그 반의 반은 B Class가

또 그 반의 반은 C Class가 이런식으로 나눠서 지급 했던것이 초기의 만들어진

Classfull Network 입니다.

 

 

 

 

A Class = 31bit 2^31 = 총 2,147,483,648개의 Address

|Net ID || Host ID    |
0xxxxxxx.00000000.00000000.00000000 : 0.x.x.x~127.x.x.x
11111111.00000000.00000000.00000000 : 255.0.0.0
//IPAddress 가 집 주소 라면 Subnet Mask 는 우편번호 (지역을 검사)

첫번째 bit 를 A는 0으로 나머진 1로 고정 -> A가 31bit
네트워크 범위 : 7bit 2^7승 = 00000000 ~ 01111111 : 0~127 (128Network)
호스트 범위 : 24bit 2^4 = 0.0.0~255.255.2555 (16,777,216 Host)

예약주소
0.0.0.0(Default Gateway) : 모든 IP 주소 공간 표현
127.0.0.1(LocalHost) : 127.0.0.0~127.255.255.255는 127.0.0.1로 표현

사설주소
10.0.0.0~10.255.255.255 : Private IP Address로 예약

B Class 30bit 2^30 = 총 1,073,741,824 개의 IPAddress
| NetID   | | HostID    |
10xxxxxx.xxxxxxxx.00000000.00000000 : 128.0.x.x ~ 191.255.x.x
11111111.11111111.00000000.00000000 : 255.255.0.0
네크워크 범위 : 14bit 2^14 = 10000000 ~ 10111111 : 128~191(16,384 Network)
호스트 범위 : 16bit 2^16 = 0.0~255.255(65,536 Host)

예약 주소
169.254.x.x : DHCP Server로 부터 IP를 할당받지 못한경우 사용되는 IPAddress

사설 주소
127.16.x.x~127.31.x.x : 16Network 를 Private IP Address로 예약

C Class
| Network   | |Host ID|
xxxxxxxx.xxxxxxxx.xxxxxxxx.00000000 : 192.0.0.x~223.255.255.x
11111111.11111111.11111111.00000000 : 255.255.255.0

네크워크 범위 : 21bit 2^21 = 11000000~11011111 : 192~223 (2,097,152 Network)
호스트 범위 : 8bit 2^8 = 0~255 (256Host)

사설 주소
192.168.0.x ~ 192.168.255.x : 256Network 를 Private IP Address로 예약

=> 클라이언트용
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Unicast IP Address

D Class - 멀티캐스트용
1110xxxx.xxxxxxxx.xxxxxxxx.00000000 : 224~239

네크워크 범위 : 11100000 ~ 11101111 : 224~239

Multicast IP Address 로 예약
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Multicast IP Address

E Class - 실험용
1111xxxx.xxxxxxxx.xxxxxxxx.00000000 : 240~255
네크워크 범위 : 11110000 ~ 11111111 : 240~255

실험용 IP Address 로 예약

255.255.255.255 : Broadcast IP Address
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++Broadcast IP Address

A Class 128Network 16777216Host
0~127 255.0.0.0

B Class 16384Network 65536Host
128.0~191.255 255.255.0.0

C Class 2097152Network 256Host
192.0.0~223.255.255 255.255.255.0


Subneting
Class 기반의 크게 사용하던 네크워크를 작게 여러개의 네크워크로 나누는 방법

C Class
11111111.11111111.111111111.00000000 : 255.255.255.0 (1Network 256Host)
11111111.11111111.111111111.10000000 : 255.255.255.128 (2Network 128Host)
11111111.11111111.111111111.11000000 : 255.255.255.192 (4Network 64Host)
11111111.11111111.111111111.11100000 : 255.255.255.224 (8Network 32Host)
11111111.11111111.111111111.11110000 : 255.255.255.240 (16Network 16Host)
11111111.11111111.111111111.11111000 : 255.255.255.248 (32Network 8Host)
11111111.11111111.111111111.11111100 : 255.255.255.252 (64Network 4Host)
11111111.11111111.111111111.11111110 : 255.255.255.254 (128Network 2Host)
11111111.11111111.111111111.11111111 : 255.255.255.255 (256Network 1Host)

Network ID(왼쪽 -> 오른쪽)
192.168.1.0 255.255.255.0 Network를 Subnet(Network) 5개를 만족하는 Subneting을 하시오
192.168.1.0 => 11000000.10101000.00000001.000000000
255.255.255.0 => 11111111.111111111.11111111.00000000

|Host ID|
00000000~11111111 : 0~255 1Network

 N   H
000 00000 ~ 000 11111 0~31
001 00000 ~ 001 11111 32~63
010 00000 ~ 010 11111 64~95
011 00000 ~ 011 11111 96~127
100 00000 ~ 100 11111 128~159
101 00000 ~ 101 11111 160~191
110 00000 ~ 110 11111 192~223
111 00000 ~ 111 11111 224~255

Subneting 후
Subnet 개수 : 3bit 2^3 = 8Network
Subnet 당 Host 수 : 5bit 2^5 = 32Host
사용가능한 Host수 :  Host ID 전체가 0인 Address 를 Subnet Address 라 하여 그 네크워크에 모든 주소공간을 표현하고 있는 Address 사용할 수가 없고 Host ID 전체가 1인 Address를 Bradcast Address 라 하여 그 네크워크 전체가 사용중임을 표현하고있는 Address 이기 때문에 사용할수 없다. 그래서 할당받은 IP 범위에서 Subnet Address와 Bradcast Address를 제외 시켜야만 사용할수 있는 IP범위가 나온다.

32-2(Subnet + Broadcast Address) = 30Host
Subnetmask : 255.255.255.0 -> 255.255.255.224

 

Host ID (오른쪽 -> 왼쪽)
192.168.1.0 255.255.255.0 Network를 Host(IP) 50개를 만족하는 Subneting 을 하시오

|Host ID|
00000000~11111111 : 0~255 1Network
 N   H
00 00000 ~ 00 11111111 0~63
01 00000 ~ 01 11111111 64~127
10 00000 ~ 10 11111111 128~191
11 00000 ~ 11 11111111 192~255

Subnet 개수 : 2bit 2^2 = 4Network
Subnet당 Host수 : 6bit 2^6 = 64Host
사용가능한 Host수 : 64-2 = 62Host
Subnetmask : 255.255.255.192

 

이렇게 강의를 맞추는데요 ㅠ_ㅠ

우아 ㅇㅁㅇ 색입히고 자세히 설명하다가 귀찬아서 나중에 대충 했3<

이해 안되시는 부분은 댓글 달아주시면 자세히 설명 가능하면 해드리겠습니다.

문제 하실수 있는분은 해보시길 <

우아 강좌가 너무 길어졌나바 ㅠㅁㅠ

번호 제목 글쓴이 날짜 조회 수
92 전체 노획 소스. 프렌치좋아 2024.03.31 8
91 링클래식 APM GM 설정 오류 해결법 [1] file 마렬 2020.05.14 353
90 시간마다 나오는 공지를 수정하려면! 하늘별풍선 2020.05.06 166
89 [CR] Bind Failed 오류 발생 시 누스 2018.08.28 338
88 (초심자 관점) 2. CR 구축 방법 [8] file 하얀달 2017.01.15 3755
87 (초심자 관점) 1. APMSETUP7 다운 방법 [1] 하얀달 2017.01.15 1636
86 [CR] 함수 기능 정리 [2] 마사카 2017.01.06 4091
85 CR 운영자 명령어 웨이1 2017.01.03 2306
84 CR 스크립트 if 문 [1] 웨이1 2017.01.03 566
83 CR 변수 웨이1 2017.01.03 389
82 스크립트 지식 웨이1 2017.01.03 688
81 아이템 체크 사용자 정의 함수 웨이1 2017.01.03 384
80 npc생성 웨이1 2017.01.03 591
79 cr shop_db 참고 웨이1 2017.01.03 330
78 맵블럭 오류 [1] 웨이1 2017.01.03 451
77 CR 아이템 추가 웨이1 2017.01.03 931
76 소지품 확인 사용자 정의 함수 웨이1 2017.01.03 286
75 [CR] 인던 추가방법 웨이1 2017.01.03 1446
74 가독성 높은 스크립트 짜기! 김돌돌 2016.12.24 642
73 서버 느리게하는 요소 김돌돌 2016.12.23 961
72 프바 몹추가 팁 김돌돌 2016.12.23 991
71 cr 구축법 [1] 김돌돌 2016.12.23 1508
70 맵 연결포트 강의입니다. 김돌돌 2016.12.23 389
69 머리 염색 NPC 강의 옹동봉 2016.12.22 157
68 [CR] ㅇㅇㅇㄹ // cr 초간단 강의 onpclogin 우지냥 2016.12.18 342
67 [CR] cr에서 숫자값을 저장할 수 있는 함수 우지냥 2016.12.18 129
66 스크립트 팁 - 가독성 좋게해주는 팁 우지냥 2016.12.08 188
65 유저가 접속안했을때 아이피 쉽게 알아낼수있는 간단한 TIP입니다 file 우지냥 2016.12.08 265
64 [CR] Chapter. 3-1 꼭 알아둬야할 CR의 문제점 우지냥 2016.12.03 790
63 [CR] 동화 // 조건의종류 우지냥 2016.12.03 111
62 [CR] 동화 // 조건문의 기초 [1] 우지냥 2016.12.03 102
61 CR] 동화 // 변수란 무엇인가? 우지냥 2016.12.03 128
60 [CR] 동화 // 간략하고 짧은 강의 우지냥 2016.12.03 199
59 [CR] 원거리 공격마법 만들기 우지냥 2016.12.03 345
58 [CR] 전설 // 이전 강의에 이은 2번째 강의! 우지냥 2016.12.03 187
57 [CR] 전설 // 허접한 강의(전반적인 스크립트 설명) 우지냥 2016.12.03 280
56 [CR] 이영아 // callfunc 우지냥 2016.12.03 169
55 [CR] Chapter. 2-2 데이터베이스[ 엔피씨 ]강의 우지냥 2016.12.03 118
54 [CR] Chapter. 2-1 데이터베이스[ 엔피씨 ]강의 우지냥 2016.12.03 239
53 [CR] Chapter. 1-2 통합파일의 구조체( 무료 ) 우지냥 2016.12.03 441
52 [CR] Chapter. 1-1 CR이라는 구동기에 대한 이해( 무료 ) 우지냥 2016.12.03 507
» [기타] 레이더즈 // IPv4 Address 구조강좌.. file 우지냥 2016.12.03 126
50 [CR] 레이더즈 // 상점NPC만들기.. 우지냥 2016.12.03 182
49 [CR] 주작 // CALLFUNC "SLOTCHECK" 우지냥 2016.12.03 87
48 [CR] 주작 // CALLFUNC "ITEMCOUNT 우지냥 2016.12.03 90
47 [CR] 주작 // [기타] 해당 좌표의 아이템 읽어오기 우지냥 2016.12.03 148
46 [CR] 주작 // switch문 추가 강의 우지냥 2016.12.03 87
45 [CR] 그림과 함께 하는 랭킹적용(랭킹자료포함) [4] file 행복e 2016.11.30 340
44 [CR] [스크립트] '스크립트'의 가장 기초적인 설명3 로이로이로이로이 2016.10.25 147
43 [CR] [스크립트] '스크립트'의 가장 기초적인 설명2 로이로이로이로이 2016.10.25 161