Static IP Address for Raspbian: Difference between revisions

From KlavoWiki
Jump to navigationJump to search
No edit summary
No edit summary
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
= interfaces =
= Debian 12 =
 
== Set IP ==
Find the interface name.
 
<pre>nmcli c show</pre>
 
Configure IP settings.
<pre>
nmcli con mod "Wired connection 1" ipv4.addresses 10.13.13.235/24 ipv4.method manual
nmcli con mod "Wired connection 1" ipv4.gateway 10.13.13.254
nmcli con mod "Wired connection 1" ipv4.dns "10.13.13.240"
</pre>
 
 
For mutiple IP or DNS settings.
<pre>
nmcli con mod "Wired connection 1" ipv4.addresses 10.13.13.235/24, 192.168.1.235/24 ipv4.method manual
nmcli con mod "Wired connection 1" ipv4.dns "8.8.8.8, 8.8.4.4"
</pre>
 
== Reset interface ==
Reset or reboot.
<pre>nmcli con down "Wired connection 1" && nmcli con up "Wired connection 1"</pre>
 
== Show Settings ==
<pre>nmcli -p connection show "Wired connection 1"</pre>
 
</pre>
 
 
= Debian 11 =
 
== interfaces ==
make sure the interfaces file has not been modified.
make sure the interfaces file has not been modified.
<pre>
<pre>
Line 13: Line 46:
# Include files from /etc/network/interfaces.d:
# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d
source-directory /etc/network/interfaces.d
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet manual
allow-hotplug wlan0
iface wlan0 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
allow-hotplug wlan1
iface wlan1 inet manual
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
</pre>
</pre>


= dhcpcd.conf =
== dhcpcd.conf ==
<pre>
<pre>
vi /etc/dhcpcd.conf
vi /etc/dhcpcd.conf
Line 42: Line 60:
static routers=192.168.13.1
static routers=192.168.13.1
static domain_name_servers=8.8.8.8 8.8.4.4
static domain_name_servers=8.8.8.8 8.8.4.4
static domain_search=mydomain.com ap.mydomain.com
</pre>
</pre>


= Alias =
== Alias ==


== Permanent ==
=== Temporary ===
'''NOTE:'''Untested
To create a temporary alias rather than a permanent one you can issue the following command from the CLI.
<pre>
<pre>
vi /etc/dhcpcd.conf
ifconfig eth0:0 192.168.22.1/24
</pre>
</pre>
== IPv6 ==
The domain names servers can have a mix of IPv4 and IPv6 servers.


<pre>
<pre>
interface eth0:0
vi /etc/dhcpcd.conf
static ip_address=172.18.11.97/27
</pre>
</pre>


== Temporary ==
To create a temporary alias rather than a permanent one you can issue the following command from the CLI.
<pre>
<pre>
ifconfig eth0:0 192.168.22.1/24
static ip6_address=2321:3fa4:4f7a:d100::1234/64
static domain_name_servers=2001:4860:4860::8888 2001:4860:4860::8844
</pre>
</pre>


== VLAN ==


'''End of Document'''.
=== Load 8021q Module ===
 
<font color=red size="4">The following is now deprecated.</font>
<br><br><br>
 
'''NOTE:''' Using the below seems to work with wheezy but I have pooblems with jessica.  The above seems to work and works well for Debian/jessica.
 
= Static IP Address =
To create a static IP address for Raspbian.
<pre>
<pre>
vi /etc/network/interfaces
vi /etc/modules
</pre>
</pre>


Change the line
Add the line
<pre>
<pre>
iface eth0 inet dhcp
8021q
</pre>
</pre>
to
 
=== Create Interface ===
Define a VLAN for a specific interface.
 
<pre>
<pre>
iface eth0 inet static
vi /etc/network/interfaces
</pre>
</pre>
and add the following lines immediately after the line above otherwise adding the lines to the end of the file will assign the information to the wireless network wlan0.


<pre>
<pre>
auto eth0
# VLAN 101 Interface
address 192.168.1.1
auto eth0.101
netmask 255.255.255.0
iface eth0.101 inet manual
network 192.168.1.0
    vlan-raw-device eth0
broadcast 192.168.1.255
gateway 192.168.1.254
</pre>
</pre>


== Add an IP Alias ==
=== Assign IP Address ===
Set a static IP for new interface
<pre>
<pre>
iface eth0:0 inet static
vi /etc/dhcpcd.conf
address 192.168.22.1
netmask 255.255.255.0
network 192.168.22.0
broadcast 192.168.22.255
auto eth0:0
</pre>
</pre>


=== Temporary Alias ===
To create a temporary alias rather than a permanent one you can issue the following command from the CLI.
<pre>
<pre>
ifconfig eth0:0 192.168.22.1/24
# Static IP configuration for VLan.101
interface eth0.101
static ip_address=192.168.1.101/24
</pre>
</pre>


= Config Example =
== Static Route ==
Here is an example of my config file.
<pre>
<pre>
auto lo
vi /lib/dhcpcd/dhcpcd-hooks/40-routes
iface lo inet loopback
 
auto eth0
iface eth0 inet static
address 192.168.13.252
netmask 255.255.255.0
network 192.168.13.0
broadcast 192.168.13.255
gateway 192.168.13.254
 
iface eth0:0 inet static
address 192.168.22.1
netmask 255.255.255.0
network 192.168.22.0
broadcast 192.168.22.255
auto eth0:0
 
allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp
</pre>
</pre>


= Bug =
This will add a static route via interface eth0.11 which is on Vlan.11you could just specify eth0.
As of 3rd June 2015 there is a known bug with Raspbian that always obtains an IP address from DHCP even if a static IP address is configured. This means that the rPi will obtain 2 individual IP address on the NICThe static been the primary and the DHCP IP been the additional.


To fix this problem if DHCP is not required
<pre>
<pre>
apt-get autoremove dhcpcd5
ip route add 192.168.0.0/16 via 192.168.99.254 dev eth0.11 proto static
</pre>
</pre>


You can also optionally remove
== Restart Interface ==
<pre>
<pre>ip link set eth0 down && ip link set eth0 up</pre>
apt-get autoremove isc-dhcp-client isc-dhcp-common
</pre>


[[Category : Raspbian]]
[[Category : Raspbian]]

Latest revision as of 21:58, 27 September 2024

Debian 12

Set IP

Find the interface name.

nmcli c show

Configure IP settings.

nmcli con mod "Wired connection 1" ipv4.addresses 10.13.13.235/24 ipv4.method manual
nmcli con mod "Wired connection 1" ipv4.gateway 10.13.13.254
nmcli con mod "Wired connection 1" ipv4.dns "10.13.13.240"


For mutiple IP or DNS settings.

nmcli con mod "Wired connection 1" ipv4.addresses 10.13.13.235/24, 192.168.1.235/24 ipv4.method manual
nmcli con mod "Wired connection 1" ipv4.dns "8.8.8.8, 8.8.4.4"

Reset interface

Reset or reboot.

nmcli con down "Wired connection 1" && nmcli con up "Wired connection 1"

Show Settings

nmcli -p connection show "Wired connection 1"


Debian 11

interfaces

make sure the interfaces file has not been modified.

vi /etc/network/interfaces

The default settings are:

# interfaces(5) file used by ifup(8) and ifdown(8)

# Please note that this file is written to be used with dhcpcd
# For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf'

# Include files from /etc/network/interfaces.d:
source-directory /etc/network/interfaces.d

dhcpcd.conf

vi /etc/dhcpcd.conf

Append the following. The entry of static will stop the server looking for an IP address from DHCP.

interface eth0
static ip_address=192.168.13.200/24
static routers=192.168.13.1
static domain_name_servers=8.8.8.8 8.8.4.4
static domain_search=mydomain.com ap.mydomain.com

Alias

Temporary

To create a temporary alias rather than a permanent one you can issue the following command from the CLI.

ifconfig eth0:0 192.168.22.1/24

IPv6

The domain names servers can have a mix of IPv4 and IPv6 servers.

vi /etc/dhcpcd.conf
static ip6_address=2321:3fa4:4f7a:d100::1234/64
static domain_name_servers=2001:4860:4860::8888 2001:4860:4860::8844

VLAN

Load 8021q Module

vi /etc/modules

Add the line

8021q

Create Interface

Define a VLAN for a specific interface.

vi /etc/network/interfaces
# VLAN 101 Interface
auto eth0.101
iface eth0.101 inet manual
    vlan-raw-device eth0

Assign IP Address

Set a static IP for new interface

vi /etc/dhcpcd.conf
# Static IP configuration for VLan.101
interface eth0.101
static ip_address=192.168.1.101/24

Static Route

vi /lib/dhcpcd/dhcpcd-hooks/40-routes

This will add a static route via interface eth0.11 which is on Vlan.11. you could just specify eth0.

ip route add 192.168.0.0/16 via 192.168.99.254 dev eth0.11 proto static

Restart Interface

ip link set eth0 down && ip link set eth0 up