Commit Graph

87 Commits

Author SHA1 Message Date
Shreyas Zare
14ad2231e3 DhcpServer: updated ReadUdpRequestAsync() with task based async calling. Fixed minor null ref issue in UpdateDnsAuthZone(). 2020-12-25 18:21:49 +05:30
Shreyas Zare
5a1f32650d DhcpServer: saving modified scopes and zone in Stop(). 2020-12-20 16:55:47 +05:30
Shreyas Zare
3081307e1b DhcpServer: added logging while updating DNS entries and lease expiry. 2020-12-19 12:34:48 +05:30
Shreyas Zare
3085f1feb5 Scope: updated static ip validation in FindInterface() with explicit check for ipv4 dhcp server and with detailed error message. 2020-12-19 12:33:32 +05:30
Shreyas Zare
79639d55ab Lease: minor update to allow specifying hardware address type explicitly. 2020-12-12 16:49:52 +05:30
Shreyas Zare
816f360a58 DhcpServer: fixed minor issue caused by using incorrect client identifier while updating hostname in reserved leases. 2020-12-12 16:49:18 +05:30
Shreyas Zare
31eee972e0 removed workaround code due to issue: https://github.com/dotnet/runtime/issues/37873 2020-12-06 18:08:41 +05:30
Shreyas Zare
36116391b6 DhcpServer: added feature to automatically save modified zones. Added validation checks in UpdateDnsAuthZone. 2020-12-06 16:58:06 +05:30
Shreyas Zare
de28d05103 DhcpServer: Removing lease hostname entry from dns if the hostname has changed. 2020-12-05 19:35:20 +05:30
Shreyas Zare
07e714bd14 DhcpServer: updating hostname in reserved leases to null when host name is not provided. 2020-11-14 16:47:50 +05:30
Shreyas Zare
84a759bad5 Scope: implemented vendor specific information option. 2020-11-14 16:46:35 +05:30
Shreyas Zare
e84b4a3748 VendorSpecificInformationOption: added hex string parsing. 2020-11-14 16:44:28 +05:30
Shreyas Zare
8605862b3d DhcpMessage: added VendorClassIdentifier property. 2020-10-31 14:13:30 +05:30
Shreyas Zare
ee7da07313 DhcpOption: added parsing entry for VendorSpecificInformation and VendorClassIdentifier. 2020-10-31 14:13:04 +05:30
Shreyas Zare
04134d80ad added VendorSpecificInformationOption 2020-10-31 14:12:22 +05:30
Shreyas Zare
c230eaef44 added VendorClassIdentifierOption 2020-10-31 14:12:13 +05:30
Shreyas Zare
48ea4ac893 DhcpServer: strictly enforcing exclusion lists for lease renewals. 2020-10-24 17:37:44 +05:30
Shreyas Zare
814517fc25 Scope: added IsAddressExcluded(). Updated GetOffer() to release existing lease if its dynamic and is excluded. 2020-10-24 17:36:31 +05:30
Shreyas Zare
36819701b9 DhcpServer: implemented ServerHostName and BootFileName options. 2020-10-24 16:55:16 +05:30
Shreyas Zare
795bfdb015 DhcpMessage: added support for sname and file fields. 2020-10-24 16:53:54 +05:30
Shreyas Zare
7de99aca59 Scope: added serverHostName and bootFileName options 2020-10-24 16:50:52 +05:30
Shreyas Zare
4bde5b0871 DhcpServer: changed sequence of FindThisDnsServerAddress() call in ActivateScopeAsync() after the FindInterface() so that the DNS address is correctly read. 2020-10-17 18:30:04 +05:30
Shreyas Zare
02c2225116 DhcpServer: implemented option to specify different next server address. 2020-10-04 20:07:41 +05:30
Shreyas Zare
9186a13039 Scope: sorting reserved leases by ip address for better display. 2020-10-04 14:55:31 +05:30
Shreyas Zare
d7f4719fd0 DhcpServer: added support to shift an allocation from dynamic to another reserved lease address and vice versa. 2020-10-04 14:35:16 +05:30
Shreyas Zare
ad74afa91e DhcpServer: fixed issue in FindScope() which required the relay agent ip address to be in the scope range. 2020-10-04 13:49:31 +05:30
Shreyas Zare
e7277a6cec Scope: added IsAddressInNetwork() to check if an address is in the network defined by the subnet mask. 2020-10-04 13:48:15 +05:30
Shreyas Zare
2b5dffb4b4 DhcpServer: sending correct siaddr for nak responses. 2020-09-26 20:06:01 +05:30
Shreyas Zare
cbcca55b36 DhcpServer: removed remote port condition checks since some relay agents use random ports. Using correct server identifier address in options and response message. 2020-09-26 19:55:46 +05:30
Shreyas Zare
58f00c28b6 DHCP: minor validation fixes done. 2020-09-26 19:04:12 +05:30
Shreyas Zare
76f4276e87 DhcpServer: Added feature to allow multiple scopes per network interface. Code refactoring done. 2020-09-26 18:39:29 +05:30
Shreyas Zare
e6e1f7b3cd Scope: changed reserved lease from array to concurrent dictionary for fast lookups. Added GetReservedLease() methods for fast lookups of reserved lease. Code refactoring done. 2020-09-26 18:20:07 +05:30
Shreyas Zare
e25f72f9df Lease: using enum in place of constant. 2020-09-26 18:09:50 +05:30
Shreyas Zare
eed8597001 DHCP options codee refactoring done. 2020-09-26 18:09:01 +05:30
Shreyas Zare
c022e31ad5 DhcpServer: fixed issue in FindScope() caused due to unnecessary validation to check if RelayAgentIpAddress equals remoteAddress. 2020-09-26 12:20:14 +05:30
Shreyas Zare
f5b0439fc0 DhcpServer: added error handling to fix issue when exception is thrown causing the client to not receive IP address. 2020-09-12 13:06:45 +05:30
Shreyas Zare
f7550059e7 DhcpServer: implemented async methods to prevent thread from blocking. 2020-09-05 16:14:35 +05:30
Shreyas Zare
7114b2ad8f DhcpServer: Code refactoring done to handle requests in same thread. Added dns update for hosts that send INFORM message. Fixed bug in dns update that caused incorrect reverse zone creation. Code refactoring done. 2020-08-29 14:15:55 +05:30
Shreyas Zare
a89cbd3d5f DhcpMessage: updated code to removed assumption of Ethernet hardware address type. 2020-08-29 14:13:14 +05:30
Shreyas Zare
cdcb79cc6a Scope: removed reverse zone property since it does not reflect correct reverse zone for all networks. 2020-08-29 14:12:37 +05:30
Shreyas Zare
c485c358ec DhcpServer: updated code for UnbindUdpListener() since the workaround did work well. 2020-07-18 13:45:58 +05:30
Shreyas Zare
abf2530ab7 Scope: fixed bug that caused reserved addresses to stop working. code refactoring done. 2020-07-18 12:41:04 +05:30
Shreyas Zare
0afe7a8e64 DhcpServer: implemented waitForInterface option in ActivateScope() to allow waiting upto 30 sec for activating scope on server startup. Implemented stopping option in UnloadScope() to avoid closing socket when server is stopping to prevent from getting indefinitely blocked due to .NET Core bug on linux. 2020-06-20 14:05:43 +05:30
Shreyas Zare
f00cdad2ab Fixed socket dispose getting blocked issue with work around. More info on the issue: https://github.com/dotnet/runtime/issues/37873 2020-06-14 19:57:21 +05:30
Shreyas Zare
7c38ddac37 DhcpServer: added retry with delay in ActivateScope() when no static IP address was found on the system which is common issue when the server boots up. 2020-06-13 19:54:03 +05:30
Shreyas Zare
2b9688e3da DhcpServer: Code refactoring changes done. 2020-06-13 13:42:38 +05:30
Shreyas Zare
4745d24e0a Scope: moved GetReverseZone() methods to Zone class. 2020-06-13 13:41:58 +05:30
Shreyas Zare
968fe66b91 DhcpServer: code changes done as per AuthZoneManager implementation changes. Removed ServerDomain property. Code refactoring done. 2020-06-06 16:29:22 +05:30
Shreyas Zare
e9ba62103a minor refactoring. 2020-05-23 17:30:41 +05:30
Shreyas Zare
6eac903552 DhcpServer: done AuthZoneManager related changes. 2020-05-23 17:29:51 +05:30