pfSense – Update Realtek driver v1.95

Download driver:
jselec mirror:

Unzip & Place “if_re.ko” file at “/boot/kernel

Change ownership and permissions on the if_re.ko file

chown root:wheel if_re.ko
chmod 0555 if_re.ko

Then edit “/boot/loader.conf” to add this line:



Then go to diagnostics > command prompt in the WebGUI

Run the command


If you did everything properly you’ll see “if_re.ko” in the list that comes up. If not, the driver isn’t loaded.

(i didn’t get it loaded myself. Added the line of code to /boot/defaults/loader.conf Then it worked for me)


Proxmox gui not responding

It could happen that the Proxmox GUI is not responding to http request.
One reason could be that the webdaemon is not running or has crashed.

Try restart of the service:

service pveproxy restart

Live ADS-B receiver by PH-4GC

Yesterday my friend Theo put his new ADS-B receiver online.

The system is running on a Raspberry Pi.

Feel free to look at the live map at:

Theo is a drone pilot who makes beautiful aerial photos and video’s. If you are interested, hit the external link Visual Heights on this website.

nextcloud logo

Nextcloud update php5.6 to php7.0

Add these two lines to your /etc/apt/sources.list file
deb jessie all
deb-src jessie all

Key installation
cat dotdeb.gpg | apt-key add -

apt-get update

Install PHP7
apt-get install libapache2-mod-php7.0 php7.0-apcu php7.0-apcu-bc php7.0-cli php7.0-common php7.0-curl php7.0-gd php7.0-igbinary php7.0-imagick php7.0-imap php7.0-intl php7.0-json php7.0-mbstring php7.0-mcrypt php7.0-mysql php7.0-opcache php7.0-phpdbg php7.0-readline php7.0-redis php7.0-sqlite3 php7.0-xml php7.0-zip

disable php5 enable php7
a2dismod php5
a2enmod php7.0
service apache2 restart

Modify the default php settings in php.ini for better performance:





Proxmox Paths

local-lvm (pve)

hdd-1tb (pve)

synology (pve)


Chrome browser in Ubuntu

Follow the instruction for installation:

  1. Add Key:
    wget -q -O - | sudo apt-key add - 
  2. Set repository:
    sudo sh -c 'echo "deb [arch=amd64] stable main" >> /etc/apt/sources.list.d/google-chrome.list'
  3. Install package:
    sudo apt-get update 
    sudo apt-get install google-chrome-stable

PXE Server on Existing Network

Many thanks to Sebastian Krysmanski’s original post!

The Goal

At the end of this article you’ll have a working PXE server that lets you boot memtest86+ over a network.

The goal is to have a simple but working solution. This is why I’m using memtest. It consists of just one file and thus is easy to use in a PXE setup. More complex scenarios (i.e. loading real operating systems) can be built on top of this simple setup.

Everything described in the article can be done inside a virtual machine. The only requirement is that the VM is connected directly (i.e. no NAT) to the network where it’s supposed to serve PXE (usually the host’s network).

The Basics: PXE, DHCP, ProxyDHCP, TFTP, and dnsmasq

PXE is an abbreviation for “Preboot Execution Environment”. To put it simple: It’s a standardized way to boot an operating system over network (rather than from hard disk).

DHCP is usually used to assign IP addresses to computers/devices in a network. PXE is an extension to DHCP. To use PXE one needs a PXE-capable DHCP server.

When PXE was designed, the creators wanted to make it compatible with networks that already have an existing DHCP server. As a result, PXE and DHCP can be provided by separate servers without interfering with each other. In this scenario, the PXE server is called proxyDHCP server and only provides the PXE functionality (but doesn’t do IP assigning).

TFTP (Trivial File Transfer Protocol) is used by PXE clients to download the operating system (file) from the PXE server.

dnsmasq is a “simple” Linux tool that combines a DNS server, a DHCP server, a TFTP server, and a PXE server. This is the tool you’ll use in this article.


The steps in this article are based on Ubuntu 16.04.

You need the following packages:

$ apt-get install dnsmasq pxelinux syslinux-common

You also need the precompiled memtest binary:

$ wget
$ gzip -dk memtest86+-5.01.bin.gz

Furthermore, you need a working DHCP server (e.g. one provided by a hard router).

The last thing you need is to know the network you’re on. My network is 192.168.178.XXX – so I’ll use this in this article. This information is only needed once in a configuration file (see below).

Warning: During the course of this article your Ubuntu machine may temporarily lose the ability to do DNS lookups. This is caused by dnsmasq. If this happens to you and you need to download anything or access the web, just (temporarily) stop dnsmasq.

Step by Step: From Start to Finish

Lets do it then. This section describes all steps need to get a working PXE server.

First, lets stop dnsmasq for now.

$ service dnsmasq stop

Create the directory where all transferable operating system files will reside:

$ mkdir -p /var/lib/tftpboot

Inside of this directory, create a directory for the unzipped memtest binary file and copy it there:

$ mkdir -p /var/lib/tftpboot/memtest
$ cp ~/memtest86+-5.01.bin /var/lib/tftpboot/memtest/memtest86+-5.01

Important: Note that the copy command removed the .bin file extension. This is required.

Now create the directory for the PXE configuration file:

$ mkdir -p /var/lib/tftpboot/pxelinux.cfg

Important: This directory must always be called pxelinux.cfg.

Inside of this directory, create a file called default and put in the following content:

default memtest86
prompt 1
timeout 15

label memtest86
  menu label Memtest86+ 5.01
  kernel /memtest/memtest86+-5.01

Next, you need to put the files pxelinux.0 (Ubuntu package pxelinux) and ldlinux.c32 (Ubuntu package syslinux-common) in /var/lib/tftpboot. I’ll use symlinks for that:

$ ln -s /usr/lib/PXELINUX/pxelinux.0 /var/lib/tftpboot/
$ ln -s /usr/lib/syslinux/modules/bios/ldlinux.c32 /var/lib/tftpboot/

Now, clear all contents of /etc/dnsmasq.conf and replace them with this:

# Disable DNS Server
# Enable DHCP logging
# Respond to PXE requests for the specified network;
# run as DHCP proxy
# Provide network boot option called "Network Boot".
pxe-service=x86PC,"Network Boot",pxelinux

Important: In line 9 you need to put in your network, if you’re not on 192.168.178.XXX.

Edit /etc/default/dnsmasq and add the following line to the end:


This line is necessary because you disabled dnsmasq’s DNS functionality above (with port=0). Without it Ubuntu will still redirect all DNS queries to dnsmasq – which doesn’t answer them anymore and thus all DNS lookups would be broken. You can check /etc/resolv.conf and verify that it contains the correct IP address for your network’s DNS server.

Last step – start dnsmasq again:

$ service dnsmasq start

Now, when starting a PXE-enabled machine, it should boot memtest.

OpenVPN shortcut

This script will show your current WAN IP address before and after connecting to your VPN.

VALID_IP="" #this is the correct IP you should be connected to
myip="$(dig +short"
echo "My current WAN/Public IP address: ${myip}"
echo "Starting OpenVPN connection"

sleep 1
sudo openvpn --config ~/path/to/VPNConfig.ovpn --daemon
echo "Establishing connection..."
sleep 8
myip="$(dig +short"
echo "Now connected to WAN/Public IP address: ${myip}"
if [ "$myip" == "$VALID_IP" ]; then
echo "Succesfull connected to VPN-server!"
sleep 1

Read more

Raspberry Pi Static ip address

Edit /etc/dhcpcd.conf
sudo nano /etc/dhcpcd.conf

Add the following rows add the bottom of the text. Leave the default text intact.

interface eth0
static ip_address=
interface wlan0
static ip_address=
static routers=
static domain_name_servers=


OpenSSH server install Ubuntu

1. To install it, open terminal (Ctrl+Alt+T) or log in Ubuntu server and run command:

sudo apt-get install openssh-server


2. After that, you should have SSH service enabled in your system, you may check its status by running command:

sudo service ssh status


3. You may change some settings (e.g., the listening port, and root login permission) by editing the configuration file via command:

sudo nano /etc/ssh/sshd_config

On Ubuntu desktop, you may use gedit instead of nano:


Finally apply the changes by restarting or reloading SSH:

sudo service ssh restart