Kea DHCP సర్వర్ BIND 10 మరియు అంతర్నిర్మిత మాడ్యులర్ ఆర్కిటెక్చర్ని ఉపయోగించడం, ఇది వివిధ ప్రాసెసర్ ప్రక్రియలుగా విభజించే కార్యాచరణను సూచిస్తుంది. ISC DHCPని భర్తీ చేయగల సామర్థ్యం ఉన్న DHCPv4 మరియు DHCPv6 ప్రోటోకాల్లకు మద్దతుతో ఉత్పత్తి పూర్తి-ఫీచర్ చేయబడిన సర్వర్ అమలును కలిగి ఉంది. Kea డైనమిక్గా DNS జోన్లను (డైనమిక్ DNS) అప్డేట్ చేయడానికి అంతర్నిర్మిత సాధనాలను కలిగి ఉంది, సర్వర్ డిస్కవరీ, అడ్రస్ అసైన్మెంట్, అప్డేట్ మరియు రీకనెక్షన్, సర్వీసింగ్ సమాచార అభ్యర్థనలు, హోస్ట్ల కోసం చిరునామాలను రిజర్వ్ చేయడం మరియు PXE బూటింగ్ కోసం మెకానిజమ్లకు మద్దతు ఇస్తుంది. DHCPv6 ఇంప్లిమెంటేషన్ అదనంగా ప్రిఫిక్స్లను డెలిగేట్ చేసే సామర్థ్యాన్ని అందిస్తుంది. బాహ్య అనువర్తనాలతో పరస్పర చర్య చేయడానికి ప్రత్యేక API అందించబడింది. సర్వర్ను పునఃప్రారంభించకుండానే ఫ్లైలో కాన్ఫిగరేషన్ను నవీకరించడం సాధ్యమవుతుంది.
కేటాయించిన చిరునామాలు మరియు క్లయింట్ పారామీటర్ల గురించిన సమాచారం వివిధ రకాల నిల్వలో నిల్వ చేయబడుతుంది - ప్రస్తుతం బ్యాకెండ్లు CSV ఫైల్లు, MySQL DBMS, Apache Cassandra మరియు PostgreSQLలో నిల్వ చేయడానికి అందించబడ్డాయి. హోస్ట్ రిజర్వేషన్ పారామితులను JSON ఫార్మాట్లో కాన్ఫిగరేషన్ ఫైల్లో లేదా MySQL మరియు PostgreSQLలో టేబుల్గా పేర్కొనవచ్చు. ఇది DHCP సర్వర్ పనితీరును కొలిచే perfdhcp సాధనం మరియు గణాంకాలను సేకరించే భాగాలను కలిగి ఉంటుంది. Kea మంచి పనితీరును ప్రదర్శిస్తుంది, ఉదాహరణకు, MySQL బ్యాకెండ్ని ఉపయోగిస్తున్నప్పుడు, సర్వర్ సెకనుకు 1000 అడ్రస్ అసైన్మెంట్లను (సెకనుకు దాదాపు 4000 ప్యాకెట్లు) నిర్వహించగలదు మరియు memfile బ్యాకెండ్ను ఉపయోగిస్తున్నప్పుడు, పనితీరు సెకనుకు 7500 అసైన్మెంట్లకు చేరుకుంటుంది.
కాన్ఫిగరేషన్ బ్యాకెండ్ (CB, కాన్ఫిగరేషన్ బ్యాకెండ్) అమలు చేయబడింది, ఇది అనేక DHCPv4 మరియు DHCPv6 సర్వర్ల సెట్టింగ్లను కేంద్రీయంగా నిర్వహించడానికి మిమ్మల్ని అనుమతిస్తుంది. గ్లోబల్ సెట్టింగ్లు, షేర్డ్ నెట్వర్క్లు, సబ్నెట్లు, ఆప్షన్లు, పూల్స్ మరియు ఆప్షన్ డెఫినిషన్లతో సహా చాలా కీ సెట్టింగ్లను నిల్వ చేయడానికి బ్యాకెండ్ ఉపయోగించవచ్చు. ఈ సెట్టింగ్లన్నింటినీ స్థానిక కాన్ఫిగరేషన్ ఫైల్లో నిల్వ చేయడానికి బదులుగా, వాటిని ఇప్పుడు బాహ్య డేటాబేస్లో ఉంచవచ్చు. ఈ సందర్భంలో, అన్నింటినీ కాకుండా, CB ద్వారా కొన్ని సెట్టింగులను గుర్తించడం సాధ్యపడుతుంది, బాహ్య డేటాబేస్ మరియు స్థానిక కాన్ఫిగరేషన్ ఫైళ్ల నుండి పారామితులను అతివ్యాప్తి చేయడం (ఉదాహరణకు, నెట్వర్క్ ఇంటర్ఫేస్ సెట్టింగ్లను స్థానిక ఫైల్లలో వదిలివేయవచ్చు).
కాన్ఫిగరేషన్ను నిల్వ చేయడానికి DBMSలలో, ప్రస్తుతం MySQLకి మాత్రమే మద్దతు ఉంది (MySQL, PostgreSQL మరియు Cassandra చిరునామా అసైన్మెంట్ డేటాబేస్లను (లీజులు) నిల్వ చేయడానికి ఉపయోగించవచ్చు మరియు MySQL మరియు PostgreSQL హోస్ట్లను రిజర్వ్ చేయడానికి ఉపయోగించవచ్చు). డేటాబేస్లోని కాన్ఫిగరేషన్ను DBMSకి నేరుగా యాక్సెస్ చేయడం ద్వారా లేదా ప్రత్యేకంగా తయారు చేయబడిన లేయర్ లైబ్రరీల ద్వారా మార్చవచ్చు, ఇవి పారామీటర్లు, బైండింగ్లు, DHCP ఎంపికలు మరియు సబ్నెట్లను జోడించడం మరియు తొలగించడం వంటి కాన్ఫిగరేషన్ నిర్వహణ కోసం ప్రామాణిక సెట్లను అందిస్తాయి;
కొత్త "DROP" హ్యాండ్లర్ క్లాస్ జోడించబడింది (DROP క్లాస్తో అనుబంధించబడిన అన్ని ప్యాకెట్లు వెంటనే తొలగించబడతాయి), ఇది అవాంఛిత ట్రాఫిక్ను వదలడానికి ఉపయోగించవచ్చు, ఉదాహరణకు, కొన్ని రకాల DHCP సందేశాలు;
కొత్త పారామితులు గరిష్ట-లీజు-సమయం మరియు మిని-లీజు-సమయం జోడించబడ్డాయి, క్లయింట్కు (లీజు) కట్టుబడి ఉండే చిరునామా యొక్క జీవితకాలాన్ని హార్డ్-కోడెడ్ విలువ రూపంలో కాకుండా, ఒక రూపంలో నిర్ణయించడానికి మిమ్మల్ని అనుమతిస్తుంది. ఆమోదయోగ్యమైన పరిధి;
DHCP ప్రమాణాలకు పూర్తిగా అనుగుణంగా లేని పరికరాలతో మెరుగైన అనుకూలత. సమస్యల పరిష్కారానికి, Kea ఇప్పుడు ఎంపిక జాబితా ప్రారంభంలోనే DHCPv4 సందేశ రకం సమాచారాన్ని పంపుతుంది, హోస్ట్ పేర్ల యొక్క విభిన్న ప్రాతినిధ్యాలను నిర్వహిస్తుంది, ఖాళీ హోస్ట్ పేరు యొక్క ప్రసారాన్ని గుర్తిస్తుంది మరియు 0 నుండి 255 వరకు ఉప ఎంపిక కోడ్లను నిర్వచించడానికి అనుమతిస్తుంది;
DDNS డెమోన్ కోసం ప్రత్యేక నియంత్రణ సాకెట్ జోడించబడింది, దీని ద్వారా మీరు నేరుగా ఆదేశాలను పంపవచ్చు మరియు కాన్ఫిగరేషన్ మార్పులు చేయవచ్చు. కింది ఆదేశాలకు మద్దతు ఉంది: బిల్డ్-రిపోర్ట్, కాన్ఫిగర్-గెట్, కాన్ఫిగర్-రీలోడ్, కాన్ఫిగ్-సెట్, కాన్ఫిగర్-టెస్ట్, కాన్ఫిగ్-రైట్, లిస్ట్-కమాండ్లు, షట్డౌన్ మరియు వెర్షన్-గెట్;
ఎలిమినేట్ చేయబడింది దుర్బలత్వాలు (CVE-2019-6472, CVE-2019-6473, CVE-2019-6474), ఇది సరికాని ఎంపికలు మరియు విలువలతో అభ్యర్థనలను పంపడం ద్వారా సేవ యొక్క తిరస్కరణకు (DHCPv4 మరియు DHCPv6 సర్వర్ హ్యాండ్లర్ల క్రాష్కు కారణమవుతుంది) ఉపయోగించబడుతుంది. అతి పెద్ద ప్రమాదం సమస్య SVE-2019-6474, ఇది బైండింగ్ల కోసం memfile నిల్వను ఉపయోగించినట్లయితే, సర్వర్ ప్రాసెస్ను దాని స్వంతంగా పునఃప్రారంభించడం అసాధ్యం చేస్తుంది, కాబట్టి ఆపరేషన్ను పునరుద్ధరించడానికి నిర్వాహకుడు (బైండింగ్ డేటాబేస్ను శుభ్రపరచడం) మాన్యువల్ జోక్యం అవసరం.