DHCP ¼­¹ö¿¡ ±ÔÄ¢ÀÌ ÀÖ³ª¿ä?

   Á¶È¸ 2855   Ãßõ 0    

쪽팔리면 질문하지 맙시다. 소중한 답변 댓글을 삭제하는건 부끄러운 일 입니다 


DHCP 서버가 IP 할당한 목록을 보다 궁금한 부분이 생겨서 질문드립니다.


현재 DHCP 서버에서 사용 중인 대역은 [192.168.1.2 ~ 192.168.1.254] 1개입니다.

저는 IP 할당을 숫자가 작은 부분부터 사용할 줄 알았는데 아니어서요.


신기한 게 2부터 30까지, 190부터 199까지 사이로 나눠집니다.

물론 범위 안에 모든 IP를 할당받은 것은 아니긴 합니다.


뭔가 MAC 주소 기반으로 할당하는 알고리즘이 있지 않을까 하는 생각이 듭니다.


혹시 DHCP 서버도 IP 할당에 대한 규칙이 있을까요?

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
Èæ±â»ç 2023-08
IP ÇÒ´ç ¼ø¹ø¿¡ Á¤ÇØÁø ±ÔÄ¢Àº ¾ø½À´Ï´Ù. ±¸ÇöÇÑ ¼­¹ö°¡ »ç¿ëÇÏ´Â ¾Ë°í¸®Áò¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
Ŭ¶óÀ̾ðÆ®Ãø¿¡¼­ ±âÁ¸ IP »ç¿ë°¡´ÉÇÏ°Ô ÇØ´Þ¶ó°í Çϸé ÀÌÀü »ç¿ëÇÑ IPÀÇ ÇöÀç»óŸ¦ È®ÀÎÇؼ­ »ç¿ëÇÏÁö ¾Ê´Â°æ¿ì¿¡ ÇÑÇØ ÀÌÀü°ÍÀ¸·Î ÇÒ´çÇØÁÖ´Â °ÍÀº ÀÖ½À´Ï´Ù.
     
¶óÀϸ® 2023-08
Á¤ÀÇµÈ °ÍÀº µû·Î ¾ø³ªº¸³×¿ä.

DHCP ÀÓ´ë½Ã°£ÀÌ Áö³ª¼­ ¿äûÇصµ IP°¡ °°Àº °Íµµ ±Ã±ÝÇß¾ú´Âµ¥ °°ÀÌ ÇØ°áµÇ¾ú½À´Ï´Ù.
°¨»çÇÕ´Ï´Ù.
¹Ú¹®Çü 2023-08
iptime °øÀ¯±â¸¸ º¸¾Æ¿ÔÀ»¶§

¸ÇóÀ½ °øÀ¯±â°¡ µ¿ÀÛÇϸ鼭 DHCP¼­¹ö°¡ µ¿ÀÛÇϸé DHCP¼­¹ö ¼ÂÆ𪿡¼­ °¡Àå ÀÛÀº IP¹øÈ£ºÎÅÍ ¼ÂÆÃµÈ ³×Æ®¿öÅ© ¾È¿¡¼­ ½ºÄ³´×Çϸç

ÁغñµÈ DHCP Ŭ¶óÀ̾ðÆ®ÀÇ ¸Æ¾îµå·¹½º¸¦ ¹øÈ£¿Í ¸ÅĪ½ÃŲ´Ù¶ó°í »ý°¢ÇÕ´Ï´Ù..

Çѹø µî·ÏµÈ ¸Æ¾îµå·¹½º´Â °øÀ¯±â°¡ ´Ù½Ã ½ÃÀÛÇÏÁö ¾Ê´Â ÇÑ ¹Ù²îÁö ¾Ê±â¿¡ Àåºñ¸¦ ²ô°Å³ª Á¦°ÅÇÑ ÈÄ¿¡ Á» ½Ã°£ÀÌ Áö³ª°í

´Ù½Ã ±× Àåºñ¸¦ µ¿ÀÛ½ÃÅ°¸é ±× ¸Æ¾îµå·¹½º¸¦ ±â¾ïÇÏ´Â °øÀ¯±âÀÇ DHCP ¼­¹ö ¶§¹®¿¡ ±× IP ¹øÈ£´Â ¹Ù²îÁö ¾Ê½À´Ï´Ù..


ÇϳªÀÇ CŬ·¡½º IP ´ë¿ªÀ» °¡Áö´Â DHCP ¼­¹ö¿¡¼­ °¡²û IP¹øÈ£°¡ ²¿À̰ųª ÀæÀº DHCP ¼­¹öÀÇ Àç½ÃÀÛÀ¸·Î ÀÎÇØ Å¬¶óÀ̾ðÆ®ÀÇ DHCP ¹øÈ£°¡

º¯ÇÏ¿© ¿Ô´Ù°¬´Ù ÇÏ´Â °æ¿ì°¡ Àִµ¥ ÀÌ·²¶§´Â Ŭ¶óÀ̾ðÆ® DHCP IP¹øÈ£¸¦ ¼öµ¿À¸·Î ÁöÁ¤ÇÏ¿© °íÁ¤ÇØÁÖ´Â ÆíÀÌ »ç¿ëÇϱâ ÆíÇÕ´Ï´Ù.. (ƯÈ÷³ª ÇÁ¸°Æ® ¼­¹ö)

DHCP ¼­¹öÀÇ IP ¹üÀ§µµ Ŭ¶óÀ̾ðÆ®°¡ ¸¹Áö ¾Ê´Ù¸é ¾î´À Á¤µµ °¹¼ö¸¦ ÁÙÀ̴°ÍÀÌ DHCP¼­¹öÀÇ IP ½ºÄ³´×½Ã ½Ã°£À» ´ÜÃàÇϱ⿡

Á» ´õ ºü¸¥ °øÀ¯±âÀÇ µ¿ÀÛÀ» ±â´ëÇÒ ¼ö ÀÖ½À´Ï´Ù..
     
¶óÀϸ® 2023-08
¸Â½À´Ï´Ù.

ÀÌ Áú¹® ¿Ã¸®°Ô µÈ °è±â°¡ iptime »ç¿ëÇßÀ» ¶§¶û ´Þ¶ó¼­ ¿´½À´Ï´Ù.

iptime¿¡¼± Ŭ¶óÀ̾ðÆ® Àåºñ°¡ ¸¹¾Æµµ IP ¸Ç µÚ¿¡ ¼ýÀÚ°¡ 50ÀÌ ³ÑÀº ÀûÀÌ ¾ø¾ú´ø µíÇÕ´Ï´Ù.
·£´ýÀ̱ä Çѵ¥ ÀÌ°Ô ¿ô±ä°Ô dhcp °ü¸®¸¦ ¾ÈÇϸé ÀÌÀü¿¡ ¾²´ø ¸Æ Á¤º¸¸¦ ¹°°íÀÖ´ÂÁö ·£´ýÇÒ´çÀ» ¾ÈÇØÁÖ°í µ¿ÀÏÇÑ ip ¿¡ ¿©·¯Àåºñ ÇÒ´çÇسö¼­ µ¿½ÃÁ¢¼ÓÀÌ ¾Æ´Ñ´ã¿¡´Â ip °ü¸®°¡ Àß ¾ÈµÇ´õ±º¿ä.
¼º±â»ç 2023-08
Àúµµ ±Ã±ÝÇؼ­ ã¾ÆºÃ½À´Ï´Ù.
dnsmasq ¶ó´Â ¼ÒÇü DHCP/DNS ¼­¹ö ÇÁ·Î±×·¥ÀÌ ÀÖ½À´Ï´Ù. (¼Ò½º´Â https://thekelleys.org.uk/dnsmasq/ )
IP ÇÒ´çÇÏ´Â ºÎºÐÀ» ã¾Æº¸¸é dhcp.c ¿¡ address_allocate¶ó´Â ÇÔ¼ö¿¡¼­ ó¸®ÇÏ´Â °Í °°½À´Ï´Ù.
HW MAC ¾îµå·¹½º¸¦ ÇؽÃÇÔ¼ö(sdbm hash) µ¹¸° ÈÄ À̸¦ ±â¹ÝÀ¸·Î IP¸¦ ÇÒ´çÇÏ´Â ºÎºÐÀÌ ÀÖ½À´Ï´Ù.

°£´ÜÇÏ°Ô ½Å±Ô ÇÒ´çÇÒ ¶§¸¸ º¸¸é ¾Æ·¡ °úÁ¤À¸·Î ÀÌ·ç¾îÁö´Â±º¿ä.
(Àç ÇÒ´ç ½Ã¿¡´Â netid·Î ÇÒ´çµÈ ±âÁ¸ ÇÒ´çµÈ ip¸¦ ´Ù½Ã ¸®ÅÏ)
1. ·£Ä«µåÀÇ MAC address¸¦ Seed °ªÀ¸·Î »ç¿ë
    00:03:47:B2:59:3C
2. sdmb ¶ó´Â Çؽà ¾Ë°í¸®ÁòÀ» µ¹¸² (string --> int)
5644212570012911586919917584275020807673170692121545560107482439325811798923254
3. 2ÀÇ °á°ú¸¦ ÇÒ´çÇÒ ¼ö ÀÖ´Â »çÀÌÁî·Î ³ª´« ³ª¸ÓÁö °ªÀ» ¾òÀ½
    2ÀÇ °ª mod 254
4. ½ÃÀÛ ÁÖ¼Ò°ª¿¡ 3ÀÇ °ªÀ» ´õÇÔ
    192.168.0.1 + 14
5. °á°ú°ª 192.168.0.15
    ¸®ÅÏÇϱâ Àü¿¡ »ç¿ë ÁßÀÎÁö ÇÎÀ¸·Î üũÇÏ°í »ç¿ë ÁßÀÌ¸é ¹Ì»ç¿ë ip°¡ ³ª¿Ã¶§±îÁö °ªÀ» Áõ°¡.
Ãß°¡·Î ¾Ë°Ô µÈ °Íµé...
1. sdmb¶ó´Â Çؽà ¾Ë°í¸®ÁòÀÌ »ý°¢º¸´Ù ¸¹ÀÌ ¾²ÀÌ´Â °ÍÀ» ¾Ë°Ô µÊ.
2. ³»ºÎÀûÀ¸·Î´Â ipÁÖ¼Ò(str)¸¦ int·Î º¯È¯Çؼ­ ¸¹ÀÌ ¾²´Âµ¥, socket.inet_aton, inet_ntoa °°Àº ÇÔ¼öµéÀÌ À¯¿ëÇÔ.
ÆÄÀ̽ãÀ¸·Î ´ëÃæ ...
ÄÚµå :
from socket import *
import struct
import getmac
def sdbm(plain_text: str) -> int:
    hash_value = 0
    for plain_chr in plain_text:
        hash_value = (
            ord(plain_chr) + (hash_value << 6) + (hash_value << 16) - hash_value
        )
    return hash_value
HWADDR = getmac.get_mac_address()
b_ip = '192.168.0.1'
pool_size = 254
s_addr = int.from_bytes(inet_aton(b_ip)) + (sdbm(HWADDR) % pool_size)
t_addr = inet_ntoa(struct.pack('!L', s_addr))
print(f"MAC address: {HWADDR}")
print(f"Hash Value : {sdbm(HWADDR)}")
print(f"Temp Value : {(sdbm(HWADDR) % pool_size)}")
print(f"ip address : {t_addr}")
Ãâ·Â :
MAC address: 0e:c9:b6:33:ea:41
Hash Value : 5644307572320518795668905132228045064013545965067596936257857263082430642659208
Temp Value : 22
ip address : 192.168.0.23


QnA
Á¦¸ñPage 4813/5691
2014-05   5016410   Á¤ÀºÁØ1
2015-12   1551872   ¹é¸Þ°¡
2020-10   2862   Á¦¿ÂÀdz¡
2019-01   2862   2CPUÃÖÁÖÈñ
2019-08   2862   ±è°Ç¿ì
2018-12   2862   ÀÌÀÌÅ©
2020-12   2862   Å°¸®¸®
2022-03   2861   ±¼··¼è
2018-12   2861   °¡»óÈ­°øºÎÁß
2018-08   2861   °íÁú¶ó
2019-05   2861   ÀϷиӽºÅ©
2023-09   2861   GEUN
2014-03   2861   witbox
2023-06   2861   ¹«µð½º
2022-10   2861   ½á¸°ÀÌ
2019-08   2861   °³±¸Àï
2019-08   2861   ÄÚÄí
2020-05   2860   ĵÀ§µå
2020-06   2860   ½ÅÀº¿Ö
2020-09   2860   ½º´Ô9
2019-04   2860   theÃ̳ð
2019-01   2860   ÇູÇϼ¼