It is quite common for UW IT staff to refer to hosts in any of three ways:
All Devices assigned an IP should have their "<Device>.<Constituent>.uwaterloo.ca." name registered in CS Inventory (and UW InfoBlox).
This XKCD.org strip's mouse–over epitomizes the importance of device naming.
The common <Constituent> names (order by function) used in CSCF are:
Function |
Choice of "<Constituent>" Name |
---|---|
Production: |
"cs", "student.cs", "cscf", or "<Research Group ID>" |
Development: |
"dev.cs", "dev.student.cs", or "dev.cscf" |
CS Private Cloud Node: |
"cloud.cs" |
Network Data Storage: |
"storage.cs" |
For "<Research Group ID>" see the URL associated with the specific CS Research area web presence.
In CSCF (at least) we are trying to use standard generic names for devices
that we expect to have multiples of.
The general form is:
<function>–<DeviceID>
where the <DeviceID> is an integer within these ranges:
Community the Service Supports | Range |
---|---|
CS–TEACHING region (student environment) | ≥ 000, < 100 |
CS–GENERAL region (general environment) | ≥ 100, < 200 |
CSCF | ≥ 200, < 300 |
Math Faculty | ≥ 300, < 400 |
UW Campus | ≥ 400, < 500 |
other | ≥ 500 or any string that results in a unique name within at least the Math Faculty |
with some constraints and exceptions, as described in the table below. The biggest constraint is that where there's a possibility for confusion between CS and Math environments, CSCF <DeviceID>s are even numbered, and MFCF <DeviceID>s are odd numbered.
General Use Microsoft Window Terminal Service | windows.student.cs | DNS balanced name for the current
CS–Teaching
production Window Terminal Server Cluster of hosts
DNS A record is elegans#.student.cs: 0 < # < 10 |
---|---|---|
windows.cs | DNS balanced name for the current
CS–General
production Window Terminal Server Cluster of hosts
DNS A record is barbarus#.cs: 0 < # < 10 | |
General–Use Linux Service | linux.student.cs | for the current CS–Teaching production version of linux |
linux.cs | for the current CS–General production version of linux | |
General–Use Ubuntu Servers
Specified by distribution. | <distribution>.student.cs | for CS–Teaching servers
and <distribution> is the Linux Distribution name plus a release id (e.g. Ubuntu 14.04 would be ubuntu1404 or for the general case: `lsb_release -s -i`+`lsb_release -s -r | tr -d "."` |
<distribution>.cs | for CS–General servers
where <distribution> is the same as above | |
General–Use Ubuntu Servers Specified by host. | ubuntu####–###.student.cs | where #### is the Ubuntu version number (e.g. 14.04 would be 1404)
### is the <DeviceID> (e.g. in the range of 000 to 098) |
ubuntu####–###.cs | where #### is the Ubuntu version number (e.g. 12.04 would be 1204)
### is the <DeviceID> (e.g. in the range of 100 to 198) | |
Graphics Lab Intel x86 Desktops | gl##.student.cs | where 00 <= ## <= seats in the lab. |
Undergraduate Mac Labs | <Building–Abbr>–<Room Number>–<###>.student.cs | where 001 <= ### <= 300 |
Graduate Mac Lab | scsmac###.cs | where 001 <= ### <= 050
For these devices the alias "scsmac###.uwaterloo.ca" is also created for ease of inclusion in MS domains (which is why we have "scs" in the <device> section of the name). |
Graduate Desktops (Windows/Linux) | scspc###.cs | where 000 < ### < 999
For these devices the alias "scspc###.uwaterloo.ca" is also created for ease of inclusion in MS domains (which is why we have "scs" in the <device> section of the name). |
Graduate Desktops (Mac) | scsmac###.cs | where 050 < ### < 999
For these devices the alias "scsmac###.uwaterloo.ca" is also created for ease of inclusion in MS domains (which is why we have "scs" in the <device> section of the name). |
NAT (Stateless) Service for CS Intranets | <Building Abbr>–<Room Number>–vlan<Tag>–nat.cscf | where <Tag> is the integer listed in the first column of ONAs Vlan Information table. |
Dedicated Services | <ServiceName>.student.cs | |
<ServiceName>.cs | ||
Dedicated Services Specified by host. | <ServiceName>–###.student.cs | where ### = 2n, 000 < n < 050 |
<ServiceName>–###.cs | where ### = 2n, 050 < n < 100 | |
Dedicated Hardware (example printers) | <Building–Abbr>–<Room Number>–<Hardware ID>{.student,}.cs | where <Hardware ID> uniquely identifies the hardware within the <Building–Abbr>–<Room Number>. |
IaaS Cloud Nodes | <Building–Abbr>–<Room Number>–<DeviceID>.cloud.cs | where <DeviceID> is as described above. |
IaaS Virtual Systems | <Building–Abbr>–<Room Number>–<DeviceID>{{.student,}.cs,cscf} | where <DeviceID> is as described above. |
Utility Servers | ugster##.student.cs | where ## = n, 01 < n < 28 |
Thin Clients | tc##.cscf | where 01 <= ## |
tc###.student.cs | where 010 <= ### | |
tc###.cs | where 010 <= ### |
The use of "Hierarchical Names" (also referred to as structured names or domain style names) as outlined in RFC 952 and RFC 1123 section 2.1