Opened 6 years ago

Closed 6 years ago

#3353 closed defect (fixed)

client classification - class eRouter1.0

Reported by: wlodekwencel Owned by: tomek
Priority: low Milestone: Kea0.8
Component: dhcp4 Version:
Keywords: Cc:
CVSS Scoring: Parent Tickets:
Sensitive: no Defect Severity: N/A
Sub-Project: DHCP Feature Depending on Ticket:
Estimated Difficulty: 0 Add Hours to Ticket: 3
Total Hours: 3 Internal?: no

Description (last modified by wlodekwencel)

If server assign incoming pocket to class VENDOR_CLASS_eRouter1.0 it's NOT stick to the rule outlined in User Guide:

For clients that belong to the VENDOR_CLASS_docsis3.0 class, the siaddr field is set to the value of next-server (if specified in a subnet). If there is boot-file-name option specified, its value is also set in the file field in the DHCPv4 packet. For eRouter1.0 class, the siaddr is always set to 0.0.0.0. 

It's always sending configured siaddr (next-server), regardless if it was configured as global or subnet value but should send 0.0.0.0

Attached results(config file/logs/capture) of 3 tests:

  1. next-server configured as global value

(test name in Forge: v4.client.classification.one.class.eRouter1-global-next-server)

  1. next-server configured as subnet value

(test name in Forge: v4.client.classification.one.class.eRouter1-subnet-next-server)

  1. next-server configured as global and subnet value.

(test name in Forge: v4.client.classification.one.class.eRouter1-two-next-servers)

Subtickets

Attachments (3)

1.tar.gz (22.4 KB) - added by wlodekwencel 6 years ago.
2.tar.gz (22.4 KB) - added by wlodekwencel 6 years ago.
3.tar.gz (22.0 KB) - added by wlodekwencel 6 years ago.

Download all attachments as: .zip

Change History (10)

Changed 6 years ago by wlodekwencel

Changed 6 years ago by wlodekwencel

Changed 6 years ago by wlodekwencel

comment:1 Changed 6 years ago by wlodekwencel

  • Description modified (diff)

comment:2 Changed 6 years ago by tomek

  • Milestone changed from DHCP-Kea-proposed to DHCP-Kea0.9-alpha
  • Priority changed from medium to low

Accepting in milestone 0.9-alpha as low priority (as decided on 2014-02-26 Kea meeting).

comment:3 Changed 6 years ago by tomek

  • Owner set to tomek
  • Status changed from new to assigned

comment:4 Changed 6 years ago by tomek

  • Owner changed from tomek to UnAssigned
  • Status changed from assigned to reviewing

The Forge tests are VERY useful. Once I set up the environment, it was very easy to reproduce the issue. The fix is one-liner. There is no unit-test for it, because we have system tests for it already.

Please review.

comment:5 Changed 6 years ago by wlodekwencel

  • Owner changed from UnAssigned to wlodekwencel

comment:6 Changed 6 years ago by wlodekwencel

  • Owner changed from wlodekwencel to tomek

All bug related tests in Forge (tests tagged with 'default_classes') are passing now. Changes looking good.
Ready to merge.

comment:7 Changed 6 years ago by tomek

  • Add Hours to Ticket changed from 0 to 3
  • Resolution set to fixed
  • Status changed from reviewing to closed
  • Total Hours changed from 0 to 3

This was a simple fix. After client classification added VENDOR_CLASS_ prefix to the value of the vendor class option, one place in the code (Dhcpv4Srv::classSpecificProcessing()) was mistakenly not updated.

Forge tests were very useful for reproducing this issue (and later confirming that the fix is indeed working).

Thanks for the review.

Note: See TracTickets for help on using tickets.