I want to set myself free from pornography, and I'm looking for a piece of SW or SW technique to achieve such goal. I know that not going to those websites might be the solution, but I'm looking for some piece of SW or SW technique on the WIFI/LAN router, which it would be optimal to block adult content within all the network, and which it would be more designed to the network itself and not particularly to a computer's children.
Which SW technique would you suggest me to block pornography directly on the network router? Are you aware of any router that has already such SW?
Can you define "pornography", because, if you cannot then you cannot block it? good luck in not blocking too much or too little. See theguardian.com/technology/2016/sep/09/… – MawgDec 7 '17 at 8:33
@Mawg of course that defining clearly, directly and unambiguously "pornography" is rocket science! Though it should not be hard to a have a comprehensive list of all websites with such content. – João Pimentel FerreiraDec 7 '17 at 19:16
My reply was getting long, so I moved it to an answer below – MawgDec 8 '17 at 7:51
Often, the preferences are set in your web browser, via a URL with numbers (example: http://192.168.0.1 or http://192.168.1.1). You may need a password.
If you set the router password long time ago and cannot remember it now, you can often reset the password to the manufacturer default by pressing a button on the router itself.
Or preferences may be set via specific application for your router, which you installed on your computer when you added the router. 2. Find the DNS server settings. Scan for the letters DNS next to a field which allows two or three sets of numbers, each broken into four groups of one to three numbers. It might look like this:
Put in the FamilyShield OpenDNS server addresses as your DNS server settings and save/apply.
Please write down your current settings before entering the OpenDNS addresses, just in case.
208.67.222.123
208.67.220.123
Test your Settings
Browse to https://welcome.opendns.com/. If you have successfully set your public DNS to the our servers, you will see "Welcome to OpenDNS!".
there are other (paid) options for a DNS with a family filter that can be setup in the same way.
using openwrt
Since you asked for a Softwaresolution: openwrt is a free and open firmware for routers. It will let you control the router like a mini-computer(which a router is). So you can install a firewall/filter there (example guide ).
There is a list of supported devices on the openwrt website. The TP-Link TL-WR841ND is an cheap router that will work for your purpose.
buying special hardware
A lot of routers offer the option of a "family filter" or have one enabled by default, which is what you are looking for. If you search online for "router with family filter" you will find many (overprized) options there. If you look for and easy way, that might be it, though I think setting up opendns is faster and gratis.
If you allready own a rasberrypie, or want to buy one, you can achive the same (or even better) result with the software pi-hole like explained here. you will essentially make the rasberrpie act as your router and get an addblocker as a free bonus to your pornblocker.
blocking on the client
There are many,many pornblockers out there that work on the client. A often recommended solution is k9 webprotection. Again a websearch will turn up many viable alternatives
I will wait some time to test it, and if not other answers are provided I set your answer as the accepted answer! We should wait! Thank you a lot – João Pimentel FerreiraDec 2 '17 at 14:16
btw, I didn't say it had to be free, I'm might pay for some better service! Thanks a lot – João Pimentel FerreiraDec 2 '17 at 14:18
1
opendns is good and free. I have also included alternatives for the sake of completeness – NivatiusDec 2 '17 at 14:55
1
If you have multiple computers behind it you also need to make sure that no other DNS resolver can be used, because if any computer is set up to use 8.8.8.8 or any other nonfiltering resolver then access will be granted despite your efforts. Which may mean you need to filter out DNS queries. – Patrick MevzekDec 7 '17 at 17:05
"The easiest Way to filter out SOME porn ..." – MawgDec 8 '17 at 12:32
opendns is free and reliable. Adding in family shield blocks everything you are intending to block.
However, I want to share some other options out there to block the content at the router.
Norton ConnectSafe is another option. There are 3 levels of blocking.
Policy 1: Security) This policy block all sites hosting malware, phishing sites, and scam sites. Those DNS entries are 199.85.126.10 & 199.85.127.10.
Policy 2: Security + Porn) In addition to blocking unsafe sites, this policy also blocks access to sites that contain sexually explicit material. Those DNS entries are 199.85.126.20 & 199.85.127.20.
Policy 3: Security + Other) In addition to blocking unsafe sites and porn sites, this policy also blocks access to sites that feature mature content, abortion, alcohol, crime, cults, drugs, gambling, hate, sexual orientation, suicide, tobacco or violence. Those DNS entries are 199.85.126.30 & 199.85.127.30.
Configure your network settings to use Google Public DNS
Configure your network settings to use Google Public DNS
When you use Google Public DNS, you are changing your DNS "switchboard" operator from your ISP to Google Public DNS.
In most cases, the IP addresses used by your ISP's domain name servers are automatically set by your ISP via the Dynamic Host Configuration Protocol (DHCP). To use Google Public DNS, you need to explicitly change the DNS settings in your operating system or device to use the Google Public DNS IP addresses. The procedure for changing your DNS settings varies according to operating system and version (Windows, Mac, Linux, or Chrome OS) or the device (computer, phone, or router). We give general procedures here that might not apply for your OS or device; please consult your vendor documentation for authoritative information.
Depending on your system you may also have the option of enabling a new privacy-oriented feature called DNS-over-TLS. This feature provides privacy and security for the DNS messages sent between your device and Google's DNS servers. Details on configuring this optional feature are in specific sections for each system.
Important: Before you start
Before you change your DNS settings to use Google Public DNS, be sure to write down the current server addresses or settings on a piece of paper. It is very important that you keep these numbers for backup purposes, in case you need to revert to them at any time.
We also recommend that you print this page, in the event that you encounter a problem and need to refer to these instructions.
Google Public DNS IP addresses
The Google Public DNS IP addresses (IPv4) are as follows:
8.8.8.8
8.8.4.4
The Google Public DNS IPv6 addresses are as follows:
2001:4860:4860::8888
2001:4860:4860::8844
You can use either address as your primary or secondary DNS server.
You can configure Google Public DNS addresses for either IPv4 or IPv6 connections, or both. For IPv6-only networks with a NAT64 gateway using the 64:ff9b::/96 prefix, you can use Google Public DNS64 instead of Google Public DNS IPv6 addresses, providing connectivity to IPv4-only services without any other configuration.
Some devices use separate fields for all eight parts of IPv6 addresses and cannot accept the :: IPv6 abbreviation syntax. For such fields enter:
2001:4860:4860:0:0:0:0:8888
2001:4860:4860:0:0:0:0:8844
Expand the 0 entries to 0000 if four hex digits are required.
Change your DNS servers settings
Because the instructions differ between different versions/releases of each operating system, we only give one version as an example. If you need specific instructions for your operating system/version, please consult your vendor's documentation. You may also find answers on our user group.
Many systems allow you to specify multiple DNS servers, to be contacted in a priority order. In the following instructions, we provide steps to specify only the Google Public DNS servers as the primary and secondary servers, to ensure that your setup will correctly use Google Public DNS in all cases.
Windows
DNS settings are specified in the TCP/IP Properties window for the selected network connection.
Example: Changing DNS server settings on Windows 7
Go to the Control Panel.
Click Network and Internet > Network and Sharing Center > Change adapter settings.
Select the connection for which you want to configure Google Public DNS. For example:
To change the settings for an Ethernet connection, right-click Local Area Connection > Properties.
To change the settings for a wireless connection, right-click Wireless Network Connection > Properties.
If you are prompted for an administrator password or confirmation, type the password or provide confirmation.
Select the Networking tab. Under This connection uses the following items, selectInternet Protocol Version 4 (TCP/IPv4) or Internet Protocol Version 6 (TCP/IPv6) and then click Properties.
Click Advanced and select the DNS tab. If there are any DNS server IP addresses listed there, write them down for future reference, and remove them from this window.
Click OK.
Select Use the following DNS server addresses. If there are any IP addresses listed in the Preferred DNS server or Alternate DNS server, write them down for future reference.
Replace those addresses with the IP addresses of the Google DNS servers:
For IPv4: 8.8.8.8 and/or 8.8.4.4.
For IPv6: 2001:4860:4860::8888 and/or 2001:4860:4860::8844.
For IPv6-only: you can use Google Public DNS64instead of the IPv6 addresses in the previous point.
Repeat the procedure for additional network connections you want to change.
Mac OS
DNS settings are specified in the Network window.
Example: Changing DNS server settings on Mac OS 10.5
Click Apple > System Preferences > Network.
If the lock icon in the lower left-hand corner of the window is locked, click the icon to make changes, and when prompted to authenticate, enter your password.
Select the connection for which you want to configure Google Public DNS. For example:
To change the settings for an Ethernet connection, select Built-In Ethernet, and click Advanced.
To change the settings for a wireless connection, select Airport, and click Advanced.
Select the DNS tab.
Click + to replace any listed addresses with, or add, the Google IP addresses at the top of the list:
For IPv4: 8.8.8.8 and/or 8.8.4.4.
For IPv6: 2001:4860:4860::8888 and/or 2001:4860:4860::8844.
For IPv6-only: you can use Google Public DNS64instead of the IPv6 addresses in the previous point.
Repeat the procedure for additional network connections you want to change.
Linux
In most modern Linux distributions, DNS settings are configured through Network Manager.
Example: Changing DNS server settings on Ubuntu
Click System > Preferences > Network Connections.
Select the connection for which you want to configure Google Public DNS. For example:
To change the settings for an Ethernet connection, select the Wired tab, then select your network interface in the list. It is usually called eth0.
To change the settings for a wireless connection, select the Wireless tab, then select the appropriate wireless network.
Click Edit, and in the window that appears, select the IPv4 Settings or IPv6 Settingstab.
If the selected method is Automatic (DHCP), open the dropdown and select Automatic (DHCP) addresses only instead. If the method is set to something else, do not change it.
In the DNS servers field, enter the Google Public DNS IP addresses, separated by a comma:
For IPv4: 8.8.8.8 and/or 8.8.4.4.
For IPv6: 2001:4860:4860::8888 and/or 2001:4860:4860::8844.
For IPv6-only: you can use Google Public DNS64instead of the IPv6 addresses in the previous point.
Click Apply to save the change. If you are prompted for a password or confirmation, type the password or provide confirmation.
Additionally, if you are using DHCP client software that overwrites the settings in /etc/resolv.conf, you will need to set up the client accordingly by editing the client's configuration file.
Example: Configuring DHCP client sofware on a Debian server
Back up /etc/resolv.conf:
sudo cp /etc/resolv.conf /etc/resolv.conf.auto
Edit /etc/dhcp3/dhclient.conf:
sudo vi /etc/dhcp3/dhclient.conf
If there is a line containing domain-name-servers, write down the IP addresses for future reference.
Replace that line with, or add, the following line:
DNS settings are specified in the Network section of the Settings menu for the selected network connection.
Example: Changing DNS server settings on Chrome OS 71
Open the Settings menu.
In the Network section, select the connection for which you want to configure Google Public DNS. For example:
To change the settings for an Ethernet connection, click on the Ethernet section.
To change the settings for a wireless connection, click on the Wi-Fi section and select the appropriate network name.
Changing the DNS settings for a mobile data connection established via Instant Tethering isn't possible. For mobile Wi-Fi hotspots that are manually set up, however, you can change the DNS settings using the instructions for a wireless connection.
Expand the Network section for the selected connection.
In the Name servers section:
For IPv4: Select the Google name servers button (or alternatively, select the Custom name servers button and enter 8.8.8.8 and 8.8.4.4).
For IPv6: Select the Custom name servers button and enter 2001:4860:4860::8888 and/or 2001:4860:4860::8844.
For IPv6-only: you can use Google Public DNS64instead of the IPv6 addresses in the previous point.
Click outside the Network section to apply the settings.
Repeat the procedure for additional network connections you want to change.
Routers
Every router uses a different user interface for configuring DNS server settings; we provide only a generic procedure below. For more information, please consult your router documentation.
To change your settings on a router:
In your browser, enter the IP address to access the router's administration console.
When prompted, enter the password to access network settings.
Find the screen in which DNS server settings are specified.
If there are IP addresses specified in the fields for the primary and seconday DNS servers, write them down for future reference.
Replace those addresses with the Google IP addresses:
For IPv4: 8.8.8.8 and/or 8.8.4.4.
For IPv6: 2001:4860:4860::8888 and/or 2001:4860:4860::8844.
For IPv6-only: you can use Google Public DNS64instead of the IPv6 addresses in the previous point.
Some routers use separate fields for all eight parts of IPv6 addresses and cannot accept the :: IPv6 abbreviation syntax. For such fields enter:
2001:4860:4860:0:0:0:0:8888
2001:4860:4860:0:0:0:0:8844
Expand the 0 entries to 0000 if four hex digits are required.
Android
Android 9 (Pie) or later
Android 9 supports "Private DNS" which uses DNS-over-TLS to provide security and privacy for your DNS queries. You can configure it with the following steps.
Go to "Settings" → "Network & Internet" → "Advanced" → "Private DNS".
Select Private DNS provider hostname.
Enter dns.google as the hostname of the DNS provider.
Click Save.
For more information see the Android blog post announcing the feature. Please note that in Android P, the default mode for Private DNS is "Automatic" which means it will use the network specified DNS server and it will attempt a TLS connection to port 853 before falling back to DNS on port 53.
Older Android versions
Devices running versions older than Android 9 do not support DNS-over-TLS and cannot configure private DNS for all networks. You can configure DNS for each individual WiFi network you use. This requires configuring all network information manually and is only recommended for advanced users.
Mobile or other devices
DNS servers are typically specified under advanced Wi-Fi settings. However, as every mobile device uses a different user interface for configuring DNS server settings, we provide only a generic procedure below. For more information, please consult your mobile provider's documentation.
To change your settings on a mobile device:
Go to the screen in which Wi-Fi settings are specified.
Find the screen in which DNS server settings are specified.
If there are IP addresses specified in the fields for the primary and seconday DNS servers, write them down for future reference.
Replace those addresses with the Google IP addresses:
For IPv4: 8.8.8.8 and/or 8.8.4.4.
For IPv6: 2001:4860:4860::8888 and/or 2001:4860:4860::8844.
For IPv6-only: you can use Google Public DNS64instead of the IPv6 addresses in the previous point.
From your browser, enter a hostname URL (such as http://www.google.com/). If it resolves correctly, bookmark the page, and try accessing the page from the bookmark.
If you are using Google Public DNS64 on an IPv6-only system, use http://[64:ff9b::d8da:e477]/ as the URL instead. If this test does not work, you do not have access to a NAT64 gateway at the reserved prefix 64:ff9b::/96 and cannot use Google Public DNS64.
If you are using an IPv6-only system without Google Public DNS64, use http://[2001:470:1:18::119]/ as the URL instead.
If this works correctly, bookmark the page, and try accessing the page from the bookmark. If these tests work (but step 1 fails), then there is a problem with your DNS configuration; check the steps above to make sure you have configured everything correctly. If these tests do not work, go to step 3.
Roll back the DNS changes you made and run the tests again. If the tests still do not work, then there is a problem with your network settings; contact your ISP or network administrator for assistance.
If you encounter any problems after setting Google Public DNS as your resolver, please run the diagnostic procedure.
1Google thanks Jason Fesler for granting permission to use test-ipv6.com URLs for browser DNS testing purposes.
Switch back to your old DNS settings
If you had not previously configured any customized DNS servers, to switch back to your old settings, in the window in which you specified the Google IP addresses, select the option to enable obtaining DNS server addresses automatically, and/or delete the Google IP addresses. This will revert your settings to using your ISP's default servers.
If you need to manually specify any addresses, use the procedures above to specify the old IP addresses.