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

   Á¶È¸ 2825   Ãßõ 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 4809/5687
2015-12   1529566   ¹é¸Þ°¡
2014-05   4993631   Á¤ÀºÁØ1
2020-08   2829   ±ÃÀÌ
2020-05   2829   Æødz°£Áö²É¡¦
2021-12   2829   Noname1
2021-03   2828   GPGPU
2020-07   2828   ÀüÁø
2020-08   2828   Á¦¿ÂÇÁ·Î
2019-09   2828   Ãë¹ÌÄÄ
2019-12   2828   Noname1
2023-02   2828   À̹ÌÁ¸ÀçÇÏ¡¦
2019-09   2828   »ç¶ûÇ϶ó
2019-01   2828   »ßµ¹À̽½ÇÄÀÌ
2019-09   2828   Â÷³ÝÄÄÇ»ÅÍ
2019-01   2828   ÇູÇϼ¼
2020-02   2828   ½É½É½É½É
2018-11   2828   Christopher
2020-09   2828   Shinjb
2021-06   2828   °í¾ç½Ã
2020-10   2828   ÇÁ¶û
2023-09   2827   ±èÁø¿µJK
2023-06   2827   iroo