16.08.2019

Yeni sistemlerde komut satırından IP yapılandırması

Eskiden ifconfig vardı. Artık bu paket bazı sistemlerde kurulu gelmiyor. Onun yerini ip komutu aldı. Bununla birlikte ağ arayüzlerindeki isimler de küçük bir değişime uğradı. Eskisi gibi eth0, wlan1 gibi isimler yok, onun yerine ens33 ya da enp2s0 gibi isimler var. Sanıyorum bunların hepsi altyapıda systemd'nin itiş gücü ile olan değişiklikler.

Bir sistemdeki IP yapılandırmasını görmek için (parantez içindeki kısaltılmış şekli)
$ ip address show (ip a)
Daha özel olarak belli bir arayüze ait IP yapılandırması için
$ ip address show dev ens33 (ip a s ens33)
diyebiliriz. Bir ağ bağlantısının durumunu görmek için
$ ip link show ens33 (ip l sh ens33)
ens33 arayüzü üzerinde yeni bir IP adresi ataması yapmak için
$ sudo ip addr add 192.168.1.1/24 dev ens33
Az önce yaptığımız IP adresi atamasını kaldırmak için
$ sudo ip addr del 192.168.1.1/24 dev ens33
Ağ arayüzü üzerindeki tüm yapıladırmayı kaldırmak için
$ sudo ip addr flush dev ens33
Ağ arayüzü için varsayılan ağ geçidi tanımlamak için
$ sudo ip route add default via 192.168.1.100
Az önce yaptığımız varsayılan ağ geçidi tanımlamasını silmek için
$ sudo ip route del default via 192.168.1.100
Yeni bir statik route eklemek için (bir sonraki tekrar başlatmada silinir)
$ sudo ip route add 192.168.7.0/24 via 192.168.1.200 dev ens33
Bu route'un bir sonraki tekrar başlatma sonrasında da geçerli olmasını istiyorsak /etc/sysconfig/network-scripts/route-eth0 dosyasına (Fedora için)
10.10.20.0/24 via 192.168.50.100 dev eth0
eklemek, Debian ve türevleri için (2018 öncesi) ise /etc/network/interfaces dosyasına
up ip route add 10.10.20.0/24 via 192.168.50.100 dev eth0
eklemek gerek. Sonrasında da
$ sudo systemctl restart systemd-networkd.service

ile ağ hizmetlerini tekrar başlatmak gerek. Ubuntu 18.04 sonrası ve muhtemelen ilgili Debian dağıtımlarında ise NetPlan kullanılıyor. Bu durumda yapılacaklar için tıklayın.

Mevcut route tablosunu görüntülemek için

$ ip route show
Bir arayüzü pasif duruma getirmek için
$ sudo ip link set ens33 down
Tekrar etkinleştirmek için
$ sudo ip link set eth1 up
ARP cache'ini görüntülemek için
$ ip neighbor
Özellikle DHCP tarafından atanmış DNS sunucuları bulmak için:
$ resolvctl dns
Ve hatta DHCP'nin adresini bulmak için
$ journalctl -b -g DHCPACK
veya
$ sudo grep -IR "DHCPOFFER" /var/log/*

olabilir. Bu da olmazsa dhclient aracını kullanarak atanmış adresi değiştirme talebiyle bir DHCPDISCOVER gönderilir. Bunun sonucunda ortamdaki DHCP sunucusu da bize DHCPOFFER ile bir IP adresi teklif eder, bizim makinemiz de DHCPACK ile bunu kabul eder, aşağıdaki gibi

# dhclient -d -nw enp3s0
Internet Systems Consortium DHCP Client 4.4.2b1
Copyright 2004-2019 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/enp3s0/38:60:77:42:4e:32
Sending on   LPF/enp3s0/38:60:77:42:4e:32
Sending on   Socket/fallback
DHCPDISCOVER on enp3s0 to 255.255.255.255 port 67 interval 7 (xid=0xb59d4262)
DHCPOFFER of 192.168.0.25 from 192.168.0.1
DHCPREQUEST for 192.168.0.25 on enp3s0 to 255.255.255.255 port 67 (xid=0xb59d4262)
DHCPACK of 192.168.0.25 from 192.168.0.1 (xid=0xb59d4262)
/usr/sbin/dhclient-script: line 706: /etc/resolv.conf: Permission denied
bound to 192.168.0.25 -- renewal in 254332 seconds.

Hiç yorum yok: