DNScrypt-proxy service not found

ok so i have read many guides on setting up dnscrypt-proxy in linux its very easy and straightforward. So to my understanding i download and install dnscrypt-proxy which i have done via yaST install package center that went fine and i added Add 127.0.0.1 as my dns servers in the network settings. BUT when i reboot i noticed i cant find the service in the list of services to start in yaST>system>service manager. and when i try to start the service i get this

 sudo systemctl start dnscrypt-proxy
[sudo] password for root: 
Failed to start dnscrypt-proxy.service: Unit dnscrypt-proxy.service not found

so why isent the service in yaST and how can i fix this thanks.

You may have to ‘enable’ it first.

how do i “enable” it just wondering thanks.

i tried

sudo systemctl enable dnscrypt-proxy
[sudo] password for root: 
Failed to enable unit: Unit file dnscrypt-proxy.service does not exist.

rpm -ql dnscrypt-proxy | grep systemd
/usr/lib/systemd/system/dnscrypt-proxy@.service

So enable:

systemctl enable dnscrypt-proxy@.service

start:

systemctl start dnscrypt-proxy@default.service

Status:

systemctl status dnscrypt-proxy@default.service

Just took a look at it.
Looks like the package doesn’t complete the installation, it only installs the components and a template Unit file, but doesn’t set up so it works.

Assuming you installed the RPM from the openSUSE repos, first verify that “127.0.0.1” is the first listed address in the following

cat /etc/resolv.conf

With the above, your system is set to look for a locally running DNS proxy before looking elsewhere.
Now, let’s make that dnscrypt-proxy Unit file work…
Change the template file to a working Unit file with the following command

mv /usr/lib/systemd/system/dnscrypt-proxy@.service /usr/lib/systemd/system/dnscrypt-proxy.service 

Now, you can immediately manage the dnscrypt-proxy.service like any other systemd service…
Start it, enable it and you should be working fine.

If the default dnscrypt configuration doesn’t suit you (It should do a round robin between found resolvers), modify

/etc/dnscrypt-proxy.conf.d/default.conf 

You can read available documentation on how to modify the configuration file either with the documentation included in the package or online… You have the list of available and supported resolvers in a file and from that can pick and choose if you wish which ones to use and which encrypted protocol you wish to use.

Don’t forget to submit a bug at https://bugzilla.opensuse.org about what you have to do to complete your installation.

HTH,
TSU

That ampersand in the Unit file name will prevent it from being used, remove it to make the Unit file functional.

TSU

Additional,
But mainly to (not) tidy up loose ends…

Supposedly that ampersand at the end of the Unif file name (but before and not part of the appended Unit file type)
is supposed to make the systemd service “parametized.”
But, I cannot think of how any kind of “parameterizedon” can be useful, or how it would be used.
From what I understand about how dnscript-proxy works, it’s a standalone proxy that is not called by anything else or calls anything else.

If someone has any idea why the ampersand should be left, I’d be open to being enlightened.
I took a few extra minutes skimming installation and configuration documentation looking specifically for possible related info, but didn’t find anything.

So, removing the ampersand as I described is likely necessary and makes things work.

TSU

You have seen, that after enable there is a @default.service

And here service was started, but I have not edited the .conf…

mv /usr/lib/systemd/system/dnscrypt-proxy@.service /usr/lib/systemd/system/dnscrypt-proxy.service

Own service-files belongs to /etc/systemd…

thank you this worked great the service is started and now shows up in yast and all i did was reboot thank you very much :slight_smile:

ok so it seems to be working like the service is running just fine but it only SOMETIMES actually works i have it set up correctly but it still refuses to resolve the dns and like i said it seems to be random on reboots and also could possibly spectrum Internets router that is hooked up be blocking it? even though i have my own dd-wrt enabled router hooked up?

Do not use the package from opensuse repo. There’s no way I can get it right. Just follow the official guide :https://github.com/DNSCrypt/dnscrypt-proxy/wiki/Installation-linux

It’s better to remove the opensuse package than to offer a broken one.

If you read the documentation for dnscrypt-proxy,
You’ll find that not all available DNS proxy servers will behave the same.
So, for instance I’ve found that the default servers I get have some kind of anti-spam, anti-marketing list built in… so refuses to resolve a number of popular websites that use heavy advertising, and specifically certain ad vendors. I also see a number of websites I might see rendered, but without their advertising.

Whether that’s good or bad is an individual decision, but can be easy to fix…
The documentation describes how to modify the config file (IIRC the default is to point to a pool of DNS servers) to point to DNS servers that comply with your requirements.

A for your ISP blocking, that’s unlikely.
dnscrypt-proxy communicate using its own proprietary protocol or https and the latter isn’t likely blocked.

TSU