title: Operating System images for ucloud --- body: **THIS SITE IS UNDER CONSTRUCTION** ![under construction](/underconstruction.jpg) ## Introduction OS images for ucloud only require two settings: * IPv6 auto configuration support * Using the metadata server for getting SSH keys There are further settings that images can or should support. ## IPv6 auto configuration Networking in ucloud requires all OS images to support IPv6. Most operating systems support IPv6 out of the box, but there might be some tunings necessary, depending on the operating system. Images for ucloud need to assign themselves addresses using **router advertisements** as described in [RFC 4862](https://tools.ietf.org/html/rfc4862). Additionally they need to support setting DNS servers based on router advertisements as described in [RFC 6106](https://tools.ietf.org/html/rfc6106). ## Metadata support On boot an image needs to be configured to allow access. For this purpose, ucloud supports using a meta data server. The meta data server is reachable by HTTP and can be resolved using DNS. The following sections list the available meta data. ### SSH keys The keys that are configured by the user to access the booted OS can be accessed on **http://metadata/ssh-keys**. A Unix alike OS could use this information similar to the following code snippet: ``` tmp=$(mktemp) curl http://metadata/ssh-keys > "${tmp}" # Ensure directory exists mkdir -p ~/.ssh # Merge them cat ~/.ssh/authorized_keys >> "${tmp}" # Create unique list of keys sort "${tmp}" | uniq > ~/.ssh/authorized_keys ```