*DHCP Relay Test Cases (Implemented and Planned) : *

IDTitleFunction NameTest StepsExpected Result
DHCPRelay_1Verify the dynamic ip address allocation of clienttest_dhcpRelay_1requestSend a DHCP discover message from clientAll DHCP messages like DHCP discover, DHCP offer, DHCP request and DHCP Ack should be checked.
DHCPRelay_2Verify DHCP NAK message from the server 1. Configure pool lets say 20.0.0.1-20.0.0.10 in DHCP server. 2. Let client get the ip address 1. Disconnect this server and Connect another server with IP pool as 80.0.0.1-80.0.0.10 2. Let client send DHCP request message.When the client sends DHCPREQUEST it will ask for the previous ip address which is not present in pool so the server will send NAK.
DHCPRelay_3Verify releasing an IP from the client to the server to rediscovertest_dhcpRelay_1releaseSend DHCP release packet from the client to the serverIP address should get released back to the server and should be able to rediscover
DHCPRelay_4Multiple dhcp servers Let there be multiple DHCP servers. Start a dhcp client from one host.IP address should get allocated to the host from one of the DHCP servers.
DHCPRelay_5Verify DHCP decline message from the clienttest_dhcpRelay_1release1. You need two clients. One static and one through DHCP server. 2. Try to first assign ip address to dhcp client, reboot the client or just remove it from network. 3. Meanwhile give the same static ip to another client. 4. Now connect the dhcp client.When the server assigns the ip address the client will do gracious arp and as static ip is already present it will send DHCPDECLINE message to the Server.
DHCPRelay_6Verify restarting the dhcp clienttest_dhcpRelay_client_request_after_reboot1. Restart the client which has got previously leased IP address. 2. Check for DHCP Ack messageIf the requested IP address can be used by the client, the DHCP server responds with a DHCPAck message.
DHCPRelay_7Verify multiple client scenariotest_dhcpRelay_NrequestLet there be multiple hosts and generate a multiple DHCP request messagesServer should be able to give ip address to all the hosts.
DHCPRelay_8check for Fail over mechanism in dhcp Let there be 2 dhcp servers in the same subnet or scope. Make one dhcp server downIf a DHCP server1 is no longer reachable, then client is able to extend the lease on its current IP address by contacting another DHCP server2.
DHCPRelay_9Verify DHCP client renewing Statetest_dhcpRelay_client_renew_timeAfter T1 timer expires, a DHCP request message which is unicast is being sent to the same serverSince the server is up and reachable , it should respond back with DHCP Ack packet
DHCPRelay_10Verify the client behavior when DHCP server is rebooted.test_dhcpRelay_server_after_reboot1. Send a DHCP discover packet . 2. Send a DHCP request packet from the client. 3. Make the DHCP server down. 4. Make the DHCP server up.1. DHCP offer packet generated. 2. DHCP Ack packet generated. 3. Client should have the same ip till the lease time expires. 4. DHCP Ack should be sent from the server.
DHCPRelay_11Verify generation of DHCP inform messagetest_dhcpRelay_inform_packet1. Let client send a DHCP inform message with its own ip address in ciaddr field. 2. Check for DHCP ACk messageDHCP Ack message should be sent from the server which includes the needed parameters in the appropriate DHCP option fields
DHCPRelay_12DHCP starvation attacktest_dhcpRelay_starvationSend a lot of dummy DHCP requests, with random source Mac address (using Scapy)After few second, there is no more IP addresses available in the pool, thus successfully performing denial of service attack to other network client.
DHCPRelay_13Verify DHCP Relay functionality Make ONOS as DHCP relay agent and Send a DHCP discover message from the client. This inserts the option 82.ONOS should forward the DHCP server reply to the client
DHCPRelay_14Verify sending DHCP discover packet twicetest_dhcpRelay_same_client_multiple_discoverSend DHCP discover packet twice from the client.DHCP server should give the same ip to the client.
DHCPRelay_15Verify sending DHCP request packet twicetest_dhcpRelay_same_client_multiple_requestSend the DHCP request packet twice form the clientDHCP Ack should be sent.
DHCPRelay_16Verify ip address assignment when dhcp request and offer ip are differenttest_dhcpRelay_server_nak_packet1. Send a DHCP discover message from the client. 2. Send DHCP request message with a different ip.1. DHCP offer should be sent from server. 2. DHCP NAK should be sent from the server.
DHCPRelay_17Verify ip address assignment is successful when desired ip is sent.test_dhcpRelay_client_desired_addressSend a DHCP discover packet with the desired ip which is in the server address pool.DHCP ip address assignment should be successful.
DHCPRelay_18Verify ip address assignment when desired ip is sent which is out of the pool.test_dhcpRelay_client_desired_address_out_of_poolSend a DHCP discover packet with the desired ip which is out of the server address pool.DHCP NAK message should be sent
DHCPRelay_19Verify ip address assignment with the lease time information specified.test_dhcpRelay_lease_packetSend a DHCP discover packet with the least time mentioned.DHCP ip address assignment should be successful with the mentioned lease time.
DHCPRelay_20Verify sending N releases from the clienttest_dhcpRelay_NreleaseSend multiple DHCP release packet from the client to the serverAll IP addresses should get released back to the server and should be able to rediscover
DHCPRelay_21Verify broadcast address in dhcp offertest_dhcpRelay_client_expected_broadcast_address1. Send DHCP discover message. 2. Extract option broadcast address from dhcp offer message. 3. Check with your server configurationBroadcast address should match
DHCPRelay_22Verify dns address in dhcp offertest_dhcpRelay_client_expected_dns_address1. Send DHCP discover message. 2. Extract option dns address from dhcp offer message. 3. Check with your server configurationDns address should match
DCPRelay_23Verify router address in dhcp offertest_dhcpRelay_client_expected_router_address1. Send DHCP discover message. 2. Extract option router address from dhcp offer message. 3. Check with your server configurationRouter address should match
DHCPRelay_24Verify Subnet mask in dhcp offertest_dhcpRelay_client_expected_subnet_mask1.Send DHCP discover message. 2.Extract option Subnet mask from dhcp offer message. 3.Check with your server configurationSubnet mask should match
DHCPRelay_25Verify sending dhcp discover with wrong broadcast addresstest_dhcpRelay_client_sends_dhcp_request_with_wrong_broadcast_address1. Send DHCP discover message with wrong broadcast address. 2. Extract option Broadcast address from dhcp offer message. 3. Check with your server configurationServer configuration broadcast address should be seen in dhcp offer
DHCPRelay_26Verify sending dhcp discover with wrong DNS addresstest_dhcpRelay_client_sends_dhcp_request_with_wrong_dns_address1. Send DHCP discover message with wrong dns address. 2. Extract option DNS server from dhcp offer message. 3. Check with your server configurationServer configuration DNS address should be seen in dhcp offer
DHCPRelay_27Verify sending dhcp discover with wrong router addresstest_dhcpRelay_client_sends_dhcp_request_with_wrong_router_address1. Send DHCP discover message with wrong router address. 2. Extract option router address from dhcp offer message. 3. Check with your server configurationServer configuration Router address should be seen in dhcp offer
DHCPRelay_28Verify sending dhcp discover with wrong Subnet mask addresstest_dhcpRelay_client_sends_dhcp_request_with_wrong_subnet_mask1. Send DHCP discover message with wrong Subnet mask. 2. Extract option Subnet mask address from dhcp offer message. 3. Check with your server configurationServer configuration Subnet mask should be seen in dhcp offer
DHCPRelay_29Verify dhcp client renew processtest_dhcpRelay_client_renew_timeAfter T1 timer expires, a DHCP request message which is unicast is being sent to the same serverSince the server is up and reachable, it should respond back with DHCP Ack packet
DHCPRelay_30Verify dhcp client rebind processtest_dhcpRelay_client_rebind_timeAfter Rebind timer expires, a DHCP request message which is broadcast is being sent.Since the server is up and reachable, it should respond back with DHCP Ack packet
DHCPRelay_31Verify lease time checktest_dhcpRelay_lease_packet1. Send DHCP discover message. 2. Send DHCP request now. 3. Extract the option lease time in DHCP ACK packet.1. DHCP offer should be received. 2. DHCP Ack packet should be received with the default lease time of 600 sec.
DHCPRelay_32Measure average no. of transactions in DHCP server in 1 secondtest_dhcpRelay_server_transactions_per_second1. Send DHCP discover and DHCP request messages from different MAC addresses. 2. Calculate total running time and total no. of transactions after repeating the procedure for 3 times. 3. Divide total no. of transactions with total running time.1. DHCP offer and DHCP Ack should be received until there are free addresses in pool of DHCP server.
DHCPRelay_33Measure average no. of consecutive successful transactions in DHCP server in 1 secondtest_dhcpRelay_server_consecutive_successes_per_second1. Send DHCP discover and DHCP request messages from different MAC addresses. 2. Calculate total running time and total no. of successful transactions after repeating the procedure for 3 times. 3. Divide total no. of successful transactions with total running time.1. DHCP offer and DHCP Ack should be received until there are free addresses in pool of DHCP server.
DHCPRelay_34Measure average number of clients (DHCP discover) in 1 secondtest_dhcpRelay_server_clients_per_second1. Send DHCP discover packets continuously from different mac address. 2.Calculate total running time and total no. Of clients after repeating the procedure for 3 times. 3. Divide total no. of clients with total running time.DHCP offer should be received until DHCP server pool ip address are exhausted.
DHCPRelay_35Measure average no. of consecutive successful clients in DHCP server in 1 secondtest_dhcpRelay_server_consecutive_successful_clients_per_second1. Send DHCP discover packets continuously from different mac address. 2.Calculate total running time and total no. Of successful clients after repeating the procedure for 3 times. 3. Divide total no. Of successful clients with total running time.DHCP offer should be received until DHCP server pool ip address are exhausted.
DHCPRelay_36Measure average no. Of concurrent transactions in DHCP server in 1 secondtest_dhcpRelay_concurrent_transactions_per_second1. Send DHCP discover and DHCP request messages from different MAC addresses using Multithreading Programming Enviornment. 2. Calculate total running time and total no. of transactions after repeating the procedure for 3 times. 3. Divide total no. of transactions with total running time.1. DHCP offer and DHCP Ack should be received until there are free addresses in pool of DHCP server.Pass
DHCPRelay_37Measure average no. Of concurrent consecutive successful transactions in DHCP server in 1 secondtest_dhcpRelay_concurrent_consecutive_successes_per_second1. Send DHCP discover and DHCP request messages from different MAC addresses using Multithreading Programming Enviornment. 2. Calculate total running time and total no. of successful transactions after repeating the procedure for 3 times. 3. Divide total no. of successful transactions with total running time.1. DHCP offer and DHCP Ack should be received until there are free addresses in pool of DHCP server.Pass
DHCPRelay_38Measure average number of concurrent clients (DHCP discover) in 1 secondtest_dhcpRelay_concurrent_clients_per_second1. Send DHCP discover packets continuously from different mac address using Multithreading Programming Enviornment. 2.Calculate total running time and total no. Of clients after repeating the procedure for 3 times. 3. Divide total no. of clients with total running time.DHCP offer should be received until DHCP server pool ip address are exhausted.Pass
DHCPRelay_39Measure average no. of consecutive successful concurrent clients in DHCP server in 1 secondtest_dhcpRelay_concurrent_consecutive_successes_per_second1. Send DHCP discover packets continuously from different mac address using Multithreading Programming Enviornment. 2.Calculate total running time and total no. Of successful clients after repeating the procedure for 3 times. 3. Divide total no. Of successful clients with total running time.DHCP offer should be received until DHCP server pool ip address are exhausted.Pass