{"id":15157580,"url":"https://github.com/smoeding/puppet-resolv_conf","last_synced_at":"2026-04-18T16:39:46.870Z","repository":{"id":48894114,"uuid":"126161832","full_name":"smoeding/puppet-resolv_conf","owner":"smoeding","description":"Manage resolv.conf using Puppet","archived":false,"fork":false,"pushed_at":"2025-07-14T18:45:42.000Z","size":90,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-20T13:54:53.169Z","etag":null,"topics":["dns","puppet","resolv-conf"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smoeding.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-03-21T10:26:29.000Z","updated_at":"2025-07-14T18:44:34.000Z","dependencies_parsed_at":"2025-12-12T00:10:44.202Z","dependency_job_id":null,"html_url":"https://github.com/smoeding/puppet-resolv_conf","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/smoeding/puppet-resolv_conf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smoeding%2Fpuppet-resolv_conf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smoeding%2Fpuppet-resolv_conf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smoeding%2Fpuppet-resolv_conf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smoeding%2Fpuppet-resolv_conf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smoeding","download_url":"https://codeload.github.com/smoeding/puppet-resolv_conf/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smoeding%2Fpuppet-resolv_conf/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31976801,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T16:27:12.723Z","status":"ssl_error","status_checked_at":"2026-04-18T16:27:11.140Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dns","puppet","resolv-conf"],"created_at":"2024-09-26T20:01:13.586Z","updated_at":"2026-04-18T16:39:46.820Z","avatar_url":"https://github.com/smoeding.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# resolv_conf\n\n[![Build Status](https://github.com/smoeding/puppet-resolv_conf/actions/workflows/CI.yaml/badge.svg)](https://github.com/smoeding/puppet-resolv_conf/actions/workflows/CI.yaml)\n[![Puppet Forge](http://img.shields.io/puppetforge/v/stm/resolv_conf.svg)](https://forge.puppetlabs.com/stm/resolv_conf)\n[![OpenVox](https://img.shields.io/badge/OpenVox-orange?label=Tested%20on)](https://voxpupuli.org/openvox/)\n[![License](https://img.shields.io/github/license/smoeding/puppet-resolv_conf.svg)](https://raw.githubusercontent.com/smoeding/puppet-resolv_conf/master/LICENSE)\n\n#### Table of Contents\n\n1. [Overview](#overview)\n2. [Module Description - What the module does and why it is useful](#module-description)\n3. [Setup - The basics of getting started with resolv_conf](#setup)\n    * [What resolv_conf affects](#what-resolv_conf-affects)\n    * [Setup requirements](#setup-requirements)\n    * [Beginning with resolv_conf](#beginning-with-resolv_conf)\n4. [Usage - Configuration options and additional functionality](#usage)\n5. [Reference - An under-the-hood peek at what the module is doing and how](#reference)\n6. [Development - Guide for contributing to the module](#development)\n\n## Overview\n\nManage the `/etc/resolv.conf` on Linux and FreeBSD.\n\n## Module Description\n\nThe module manages the DNS resolver configuration file. It allows setting the values for the `nameserver`, `search`, `sortlist` and `options` configuration settings. The following restrictions are enforced by the module:\n\n  * Up to 3 name servers may be listed.\n  * Up to 6 items may be included in the search list.\n  * Up to 10 items may be included in the sortlist.\n\n## Setup\n\n### What resolv_conf affects\n\nThe module creates and manages the content of the `/etc/resolv.conf` file. This affects the way the host is able to map hostname to IP addresses and vice versa.\n\n### Setup Requirements\n\nThe module uses the Puppet `stdlib` module.\n\n### Beginning with resolv_conf\n\nDeclare the class to create a configuration that uses only a local name server on `127.0.0.1`.\n\n```puppet\nclass { 'resolv_conf': }\n```\n\n## Usage\n\nYou can use class parameters to use a customized configuration.\n\n```puppet\nclass { 'resolv_conf':\n  nameservers =\u003e [ '9.9.9.9', ],\n}\n```\n\nYou can also use Hiera to create this configuration.\n\n```\nresolv_conf::nameservers:\n  - '9.9.9.9'\n```\n\n### Specify a remote name server and use local domain for unqualified hostnames\n\nThe following configuration will configure a remote name server and use the name of the local domain when unqualified hostnames are queried.\n\n```puppet\nclass { 'resolv_conf':\n  nameservers =\u003e [ '9.9.9.9', ],\n  searchlist  =\u003e [ $facts['networking']['domain'] ],\n}\n```\n\nIf your host is based in the `example.net` domain, then a lookup for the hostname `server` will query the name server for `server.example.net`.\n\n### Specify name servers \u0026 options\n\nThis setup creates a configuration file with the given name servers and will also set additional options to enable name server rotation and set a specific timeout.\n\n```puppet\nclass { 'resolv_conf':\n  nameservers =\u003e [ '8.8.8.8', '8.8.4.4', ],\n  options     =\u003e [ 'rotate', 'timeout:2', ],\n}\n```\n\n### Prefer a local name server\n\nThe following setup will create a configuration where the name server at `127.0.0.1 ` is queried first and only then the additional name servers are used.\n\n```puppet\nclass { 'resolv_conf':\n  nameservers              =\u003e [ '8.8.8.8', '8.8.4.4', ],\n  prepend_local_nameserver =\u003e true,\n}\n```\n\n**Note**: This module does not configure a local name server that will answer queries on `127.0.0.1`. You will have to use a different Puppet module to manage the name server.\n\n## Reference\n\nSee [REFERENCE.md](https://github.com/smoeding/puppet-resolv_conf/blob/master/REFERENCE.md)\n\n## Development\n\nYou may open Github issues for this module if you need additional options currently not available.\n\nFeel free to send pull requests for new features.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmoeding%2Fpuppet-resolv_conf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmoeding%2Fpuppet-resolv_conf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmoeding%2Fpuppet-resolv_conf/lists"}