Configuring RFC 5580 Location Attributes

Feature History for RFC 5580 Location Attributes

This table provides release and related information for the feature explained in this module. This feature is also available in all the releases subsequent to the one in which they are introduced in, unless noted otherwise.

ReleaseFeatureFeature Information
Cisco IOS XE Cupertino 17.9.1Support for RFC 5580 Location Attributes in the ControllerThis feature uses the RFC 5580 location attributes to convey location-related information for authentication and accounting exchanges.
The controller supports the following RFC 5580-related attributes:
  • Location-Information
  • Location-Data CIVIC Profile: Country
  • Location-Data CIVIC Profile: CAtype 1 (State)
  • Location-Data CIVIC Profile: CAtype 3 (City)
  • Location-Data CIVIC Profile: CAtype 23 (Venue Name)
  • Location-Data CIVIC Profile: CAtype 24 (Zip Code)
  • Location-Data GEO Profile (Longitude, Latitude, and Altitude)
  • Operator Name

Information About RFC 5580 Location Attributes

The RFC 5580 location attributes convey location-related information for authentication and accounting exchanges. The location information is useful in several scenarios. Wireless networks are deployed in public places, such as shopping malls, airports, hotels, and coffee shops by a diverse set of operators, such as wireless internet service providers (WISPs), cellular network operators, and fixed broadband networks. In all these scenarios, the network may need to know the user location to enable location-aware authorization, billing, or services. To preserve user privacy, the location information must be protected against unauthorized access and distribution.

The RFC 5580 defines two types of location:

Note: The user location is configured in AP.
Note: The NAS location is configured in AAA.

Location Profiles

You can define certain profiles in each location. Profile refers to the attributes used to define the location. Each location has two profiles, namely, Civic and Geo.

The following are the location profiles:

For users with both user location and NAS location, you can set their location in both Civic and Geo profile formats. Such users have the following locations:

Each location information, for instance, the civic user location, is sent using the following attributes:

Supported RFC 5580-Related Attributes

Thus, a user can have four locations and one operator name.

To transfer location information, the Out-of-Band Agreement (Flow 1) delivery method mentioned in RFC 5580 is supported. This is applicable only if the feature is enabled and location information is configured.

Information About Location-Capable Attribute

Cisco IOS-XE Dublin 17.11.1 supports the Location-Capable feature attribute from RFC 5580. This attribute is sent only in the network access requests. To enable the Location-Capable attribute, configure the radius-server attribute wireless location delivery out-of-band include-location-capable command. This attribute informs the RADIUS server that this device can send location information.

The RFC5580 supports three flows or modes of location delivery. As per the RFC, the Location-Capable attribute should be sent in Flow-2, which is location delivery based on Initial-Request. The above-mentioned configuration enables sending this attribute in Flow-1, which is Location delivery based on Out-of-Band agreement as well.

When an authentication or authorization request is received, the Location-Capable feature attribute is added to the request along with other location attributes as per the configuration (explained in the other section). This is applicable only for wireless clients. The RADIUS server might use this information to provide network access.

Restriction for Configuring RFC 5580 Location Attributes

This feature is supported only for 802.1X users.

Configuring Location Delivery Based on Out-of-Band Agreement (CLI)

ProcedureCommand or ActionPurpose
Step 1configure terminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 2radius-server attribute wireless location delivery out-of-band
Example:
Device(config)# radius-server attribute wireless location delivery out-of-band
Configures RFC 5580 Out-of-Band location support.
Step 3end
Example:
Device(config)# end
Returns to privileged EXEC mode.

Configuring Location-Capable Attribute (CLI)

Use the radius-server attribute wireless location delivery out-of-band command to enable the feature globally.

You can use the radius-server attribute wireless location delivery out-of-band include-location-capable command to include the location-capable attribute along with other location attributes.

ProcedureCommand or ActionPurpose
Step 1configure terminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 2radius-server attribute wireless location delivery out-of-band include-location-capable
Example:
Device(config)# radius-server attribute wireless location delivery out-of-band include-location-capable
Configures RFC 5580 out-of-band location attributes along with enabling the location-capable attribute to be part of the access request.
Step 3end
Example:
Device(config)# end
Returns to privileged EXEC mode.

Creating Location Attributes

Configuring a Civic Profile (CLI)

ProcedureCommand or ActionPurpose
Step 1configure terminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 2location civic-location identifier civic_identifier
Example:
Device(config)# location civic-location identifier USER_C_1
Configures the civic profile for User location. Here, civic_identifier refers to the civic location identifier string. It can take up to 215 characters. You can enter a total of 250 bytes to configure civic address attributes. Cisco reserves 50 bytes for internal information. Therefore, the remaining 200 bytes can be used for user-configured civic location.
Step 3country country_ID
Example:
Device(config-civic)# country IN
Sets the country ID.
Note: Only two-letter ISO 3166 country codes are accepted.
Step 4city city_name
Example:
Device(config-civic)# city Bangalore
Sets the city name.
Step 5state state_name
Example:
Device(config-civic)# state Karnataka
Sets the state name.
Step 6postal-code postal_code
Example:
Device(config-civic)# postal-code 562016
Sets the postal code.
Step 7name residence_name
Example:
Device(config-civic)# name Nivas
Sets the residence name.
Step 8end
Example:
Device(config-civic)# end
Returns to privileged EXEC mode.

You can configure the following types of civic attributes and add them to the RADIUS requests:

Configuring a Geo Profile (CLI)

ProcedureCommand or ActionPurpose
Step 1configure terminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 2location geo-location identifier geo_identifier
Example:
Device(config)# location geo-location identifier USER_G_1
Configures a Geo profile for user location. Here, geo_identifier refers to the geographic location identifier string. It can take up to 215 characters.
Step 3latitude latitude_in_degrees resolution [resolution_value]
Example:
Device(config-geo)# latitude "34 12 15"
Sets the latitude information. The optional parameters are documented within square brackets.
While configuring the latitude, you can specify the resolution, in meters. If you do not specify any resolution, a default value of 10 meters is used.
Step 4longitude longitude_in_degrees resolution resolution_value
Example:
Device(config-geo)# longitude "111 59 44"
Sets the longitude information. The optional parameters are documented within square brackets.
While configuring the longitude, you can specify the resolution, in meters. If you do not specify any resolution, a default value of 10 meters is used.
Step 5altitude altitude_value {feet resolution resolution_value | floor | meters resolution resolution_value}
Example:
Device(config-geo)# altitude 10 meters resolution 10
Configures the altitude for the geographic location. The optional parameters are documented within square brackets.
  • altitude value: Refers to the altitude, in feet, floors, or meters.
  • resolution_value: Refers to the resolution, in feet or meters.
Note: Both the altitude and the altitude resolution must be in the same unit.
Step 6resolution resolution_value
Example:
Device(config-geo)# resolution 30
Specifies a single common resolution for latitude and longitude.
Step 7end
Example:
Device(config-geo)# end
Returns to privileged EXEC mode.

Configuring an Operator Name (CLI)

ProcedureCommand or ActionPurpose
Step 1configure terminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 2location operator identifier identifier_name
Example:
Device(config)# location operator identifier USER_O_1
Configures an operator name for the user location.
Here, identifier_name supports strings up to 215 characters in length.
Step 3name operator-name
Example:
Device(config-operator)# name ACT
Configures the location operator name.
Here, operator-name supports strings up to 248 characters in length.
Step 4namespace-id {E212 | ICC | REALM | TADIG}
Example:
Device(config-operator)# namespace-id ICC
Configures the namespace for a location.
The following are the namespace options:
  • E212: Refers to the Mobile Country Code (MCC) and Mobile Network Code (MNC).
  • ICC: Refers to the International Telecommunication Union Carrier Codes (ICC).
  • REALM: Refers to any registered domain name.
  • TADIG: Refers to the Transferred Account Data Interchange Group (TADIG) code.
Step 5end
Example:
Device(config-operator)# end
Returns to privileged EXEC mode.
Note:
  • If you have not configured any namespace, REALM is used as the default value.
  • The operator name can be associated with both NAS-Location and USER-Location. When an operator name is configured at both the locations, the operator name that is configured in USER-Location takes precedence.

Associating Location Attributes

Associating Location Attributes with User Location (CLI)

ProcedureCommand or ActionPurpose
Step 1configure terminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 2ap location name location_name
Example:
Device(config)# ap location name OFFICE
Configures a location name for an AP.
Step 3ap-eth-mac AP_Ethernet_MAC
Example:
Device(config-ap-location)# ap-eth-mac 0a0b.0cf0.0001
Adds the AP to the location.
Here, AP_Ethernet_MAC refers to the AP Ethernet MAC address.
Step 4location civic-location-id identifier_name
Example:
Device(config-ap-location)# location civic-location-id USER_C_1
Associates the civic location attribute with the user location.
Step 5location geo-location-id identifier_name
Example:
Device(config-ap-location)# location geo-location-id USER_G_1
Associates the geographic location attribute with the user location.
Step 6location operator-id identifier_name
Example:
Device(config-ap-location)# location operator-id USER_O_1
Associates the operator location attribute with the user location.
Step 7end
Example:
Device(config-ap-location)# end
Returns to privileged EXEC mode.

Associating Location Attributes with the NAS Location (CLI)

ProcedureCommand or ActionPurpose
Step 1configure terminal
Example:
Device# configure terminal
Enters global configuration mode.
Step 2radius-server attribute wireless location civic-location-id identifier_name
Example:
Device(config)# radius-server attribute wireless location civic-location-id NAS_C_1
Associates the civic location attribute with the NAS location.
Here, identifier_name supports strings up to 215 characters in length.
Step 3radius-server attribute wireless location geo-location-id identifier_name
Example:
Device(config)# radius-server attribute wireless location geo-location-id NAS_G_1
Associates the geographic location attribute with the NAS location.
Here, identifier_name supports strings up to 215 characters in length. Enter a valid or existing identifier name.
Step 4radius-server attribute wireless location operator-id identifier_name
Example:
Device(config)# radius-server attribute wireless location operator-id NAS_0_1
Associates the operator location attribute with the NAS location.
Step 5end
Example:
Device(config)# end
Returns to privileged EXEC mode.

Verifying RFC 5580 Location Attribute Configuration

To verify the location attributes associated with a given location, use the following command:

Device# show ap location details AAA_location

Output:

Configured list of APs: 38ed.18ca.5a20

To verify the Cisco AP location, use the following command:

Device# show ap name AP38ED.18CA.5A20 config general

Output:

To verify the location attributes associated with a given MAC address, use the following command:

Device# show wireless client mac 0080.5222.545c detail

Output:

Policy Profile: default-policy-profile

Flex Profile: N/A

Civic Location Identifier: NAS C 1

Geo Location Identifier: NAS G 1

Operator Name Identifier: NAS O 1

Note: You will be able to view this output only if the RFC 5580 feature is enabled.

Verifying Civic, Geo, and Operator Location Details

To verify the Civic location details, use the following command:

Device# show location civic-location identifier TEST1

Civic location information:

To verify the Geo location details, use the following command:

Device# show location geo-location identifier TEST4

Geo location information:

To verify the Operator location details, use the following command:

Device# show location operator-location identifier myoperator

Operator location information:

PDF preview unavailable. Download the PDF instead.

m rfc-5580-loc-att-on-the-controller DITA Open Toolkit XEP 4.30.961; modified using iText 2.1.7 by 1T3XT

Related Documents

Preview Cisco Hyperlocation: Configuration and Verification Guide
A comprehensive guide to configuring and verifying Cisco Hyperlocation, a precise location solution utilizing Wi-Fi and Bluetooth Low Energy (BLE) technologies with Cisco Catalyst 9800 Series Wireless Controllers and Cisco Connected Mobile Experiences (CMX).
Preview Cisco Catalyst 9800 Series Wireless Controller Software Configuration Guide
This guide provides comprehensive instructions for configuring the Cisco Catalyst 9800 Series Wireless Controller with Cisco IOS XE Gibraltar 16.10.x software. It covers various aspects of wireless network setup, including basic configuration, advanced features, security, and troubleshooting.
Preview Cisco Catalyst 9800 Wireless Management Interface Configuration Guide
A technical guide for Cisco Catalyst 9800 Series Wireless Controllers, focusing on the Wireless Management Interface (WMI). Learn about configuration, best practices, NAT, CAPWAP discovery, and verification steps using CLI.
Preview Cisco FlexConnect Bonjour Deployment Guide for Cisco DNA Service
A comprehensive guide detailing the deployment of Cisco DNA Service for Bonjour with Cisco FlexConnect wireless networks, enabling seamless service discovery and distribution across wired and wireless environments.
Preview Cisco 802.11r BSS Fast Transition: Configuration Guide for Catalyst 9800 Wireless Controllers
Learn about IEEE 802.11r BSS Fast Transition for faster Wi-Fi roaming. This guide details configuration steps for Cisco Catalyst 9800 Series Wireless Controllers using CLI and GUI, covering Cisco IOS XE Amsterdam.
Preview Central Web Authentication (CWA) on Cisco Catalyst 9800 WLC and ISE Configuration Guide
A comprehensive guide detailing the configuration of Central Web Authentication (CWA) using Cisco Catalyst 9800 Series Wireless Controllers and Cisco Identity Services Engine (ISE), including AAA, WLAN, Policy, and ISE setup.
Preview Cisco Catalyst 9800 Series Wireless Controller Software Configuration Guide
Comprehensive guide for configuring Cisco Catalyst 9800 Series Wireless Controllers with Cisco IOS XE Gibraltar 16.12.x. Covers system setup, access points, radio management, security, mobility, QoS, and more for enterprise wireless networks.
Preview Cisco Catalyst 9800-CL Wireless Controller Cloud Deployment Guide
This guide provides comprehensive instructions for deploying and configuring the Cisco Catalyst 9800-CL Wireless Controller for cloud environments. It covers deployment options using VMware ESXi, Linux KVM, Microsoft Hyper-V, and Cisco ENCS NFVIS, along with detailed steps for virtual machine setup, network configuration, and high availability.