Set Static IP Address in FreeBSD

Before you begin, find out what is the interface name using the ifconfig command.

$ ifconfig -a
em0: flags=8843 metric 0 mtu 1500 options=209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC>
ether 7a:98:a6:53:cd:7a
hwaddr 7a:98:a6:53:cd:7a
inet netmask 0xffffff00 broadcast
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active
lo0: flags=8049 metric 0 mtu 16384
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
inet netmask 0xff000000
groups: lo

In this case the interface name is em0.

a. set temporary static IP (until next reboot)

# set temporary IP address to
$ ipconfig em0 inet

b. set permanent static IP address (persistent across reboots)

Static IP configuration must be included in /etc/rc.conf. Edit rc.conf using your favorite editor.

Delete or comment out the following line


Add the following lines after hostname directive:

ifconfig_em0="inet netmask"

Restart network interface service

$ sudo service netif restart 


Be aware that this method of setting a static IP address in rc.conf will disable the DHCP server. If you have custom DNS servers defined in /etc/dhclient.conf, they will not work. In this case, the custom DNS servers must be added in the /etc/resolv.conf file.

Changing the DNS nameservers in FreeBSD

Adding the nameservers to the /etc/resolv.conf file will only temporarily change the DNS nameservers. After the system is restarted, FreeBSD will default to the DNS servers obtained from the DHCP server.

To permanently alter the DNS nameservers to the ones you want to use, they need to be added to the /etc/dhclient.conf file.

$ sudo nano /etc/dhclient.conf

Add the following to the dhclient.conf file

interface "em0" {
    supersede domain-name-servers,;

Replace the interface “em0” with your default interface name, and obviously the IP address of the DNS nameservers with your own.

For more information read the man pages for dhclient and dhclient.conf.


If you disable the DHCP server in /etc/rc.conf, for example, by setting a static IP address, the supersede directive will not work. You must then edit the resolv.conf file manually and add the nameservers.


Firmware update for iDRAC6 on Dell PowerEdge R710

This tutorial is for iDRAC on a Dell PowerEdge R710.

Get the latest firmware for the iDRAC from Dell Support.

Go to -> Support -> Drivers & Downloads -> Choose from all Products -> View Products -> Servers, Storage, & Networking -> PowerEdge -> PowerEdge R710 -> Category -> Embedded Server Management -> Dell iDRAC Monolithic Release.

The latest version as of May 18th, 2018 is 2.90.

Click on the latest driver to expand the view and then click on View full driver details.

From Available formats download the:

  • Release Notes — read this before updating the firmware
  • Application format file: iDRAC6_2.90_A00_FW_IMG.exe

Note: if you run Microsoft Windows on your server, you can download the ESM_Firmware file designed to run on MS Window 64-bit Operating Systems

For this tutorial iDRAC6 is being upgraded via the iDRAC Web GUI.

Run the file to unzip. The firmware file is called firmimg.d6. Read the release notes before upgrading the firmware.

Login into the iDRAC.

Go to iDRAC Settings -> Update -> Firmware Update and click on the Browse button to select the firmware file, then click on Upload.

Screen will display File upload in progress … (wait until completed!; it will take a while)

Make sure the Current Version is lower than the New Version.

Preserve iDRAC Configuration Settings checkbox should be checked.

Click Next button to proceed with the firmware upgrade or Cancel to cancel the upgrade. Click Yes to confirm.

Wait until the upgrade is complete at 100%.

You don’t have to reboot the server. Close the browser window and reconnect to the iDRAC using a new browser session.

Congratulations! You are done.



Flash Dell PERC H200 using the Dell 6Gbps SAS HBA Non-RAID Firmware

In this tutorial I am going to show how to flash a Dell PERC H200 RAID controller to a Dell 6Gbps SAS HBA Non-RAID Controller.

In my case, I have a Dell PowerEdge R710 server that I want to use with Proxmox and ZFS. ZFS needs to have individual access to each disk in order to create a RAID. The PERC H200 controller does not allow that, and therefore it needs to be flashed to a Non-RAID controler.

Download FreeDOS from:

You need FreeDOS to boot the server and run the SAS2FLSH utility.

Download the Dell 6Gbps SAS HBA Firmware from:

The files you need are:

  • the SASHBA_Firmware_6GBPS-SAS-HBA_07.03.06.00_A11_ZPE.exe in HARD-DRIVE format
  • SASHBA_Firmware_6GBPS-SAS-HBA_RELNOTES_07.03.06.00_A11.txt release notes

Run the .exe file. You will get a folder that contains 9 files.

Rename the folders to something short, like DELL and FW maybe. The FW folder should be inside the DELL folder.

Use Rufus to create a bootable FreeDOS USB drive. Upload the Dell folder on the FreeDOS USB drive.

Boot the server using FreeDOS. After bootup is complete, run the following commands:


cls will clear the screen. dir will list the current directory. Your screen should look somewhat like this (I have other folders present that you do not):

You should see your DELL folder in the root directory. To navigate in FreeDOS you use the cd command just like in Linux. Move into the DELL\FW folder and list the directory:

C:\>cd dell

You should see something similar to this:

The directory listing should include the 9 files listed above. Do not worry if your listing doesn’t look exactly like mine.

The utility you are going to use is called SAS2FLSH.

It is a good idea to read the LSI SAS2Flash Reference Guide to have an understanding of what you are doing.

Before flashing the controller, create a backup of the BIOS, firmware and NVDATA using the following commands:

sas2flsh2 -ubios bios.rom
sas2flsh -ufirmware firmware.fw
sas2flash -o -ufwbackup firmbk.fw
sas2flsh -o -uflash flash.rom
sas2flash -o -unvdata nvdata.img

In case you do something wrong, you can use the backup files to restore the controller.



OpenNIC Project is a user owned and controlled top level Network Information Center that offers a non-traditional alternative to Top-Level Domain (TDL) registries such as ICANN.

OpenNIC recognizes all existing ICANN TLD for compatibility reasons.  In addition to resolving hostnames in the ICANN root, OpenNIC also resolves hostnames in OpenNIC operated namespace, as well as within namespaces with which peering agreements have been established.

Use OpenNIC DNS servers to enhance privacy and avoid censorship. OpenNIC is a non profit organization, free to use, operated by volunteers.


OpenNIC Project –

Wikipedia –


Configure Static DNS with DHCP on Debian

Purpose : configure your system to use your choice of DNS servers.

Why update DNS servers addresses?

  • you wish to use your own private DNS server
  • access your network devices by using a FQDN (fully qualified domain name) instead of an IP address
  • your ISP’s DNS servers are slow, creating a sluggish browsing experience

There are many free/public DNS servers. Here is a small list:

  1. Freenom:,
  2. Google:,
  3. OpenDNS:,
  4. FreeDNS:,
  5. Level3:,
  6. Cloudflare:,
  7. Quad9:,

When updating your DNS servers, always check with the provider to make sure they do not log any private information (e.g. requested IP addresses, ISP, or your geographic location)

To update the DNS servers on Debian you need to:

  1. edit the /etc/dhcp/dhclient.conf file
  2. restart the networking service

Simply adding the DNS servers to the /etc/resolv.conf file is not going to make the changes permanent. They will only last until your restart your dhcp client or reboot your system. This method is useful if you need to temporarily use or test new DNS servers.


1. Edit the /etc/dhcp/dhclient.conf file

To add static DNS servers that are used in addition to the ones provided by DHCP, use prepend

prepend domain-name-servers, bbb.bbb.bbb.bbb

To completely override the DNS servers provided by DHCP, and entirely force the system to use only the ones you provide, use supersede

supersede domain-name-servers, bbb.bbb.bbb.bbb

2. Restart the networking service

sudo /etc/init.d/networking restart

3. Check the /etc/resolv.conf file to make sure the new DNS servers where added.