четверг, 5 октября 2023 г.

Ubuntu настройка в качестве Маршрутизатора (DHCP,DNS,NAT,Iptables) статика и dhcp + vlan

 



Конфиги без вланов просто статикой и с vlanами:

1) Net

sudo nano /etc/netplan/**** (имя интерфейса)

Если просто статика то:

# This is the network config written by 'subiquity'
network:
  ethernets:
    enp0s3:
      dhcp4: true
    enp0s8:
      addresses:
      - 192.168.99.1/24
      nameservers:
        addresses: []
        search: []
  version: 2

Дополнение: 
Если нужно добавить вланы примерно такой конфиг для двух вланов 100 и 200 со статикой на внешнею сетевую enx28ee520513a4.
Вланы идут в ТРАНКЕ!

network:
   ethernets:
       enp8s0:
           dhcp4: true
       enx28ee520513a4: {}
   version: 2
   vlans:
       enx.100:
           id: 100
           link: enx28ee520513a4
           addresses: [192.168.100.2/24]
       enx.200:
           id: 200
           link: enx28ee520513a4
           addresses: [192.168.200.2/24]



2) DHCP

sudo apt install isc-dhcp-server

/etc/dhcp/dhcpd.conf


default-lease-time 600;
max-lease-time 7200;

##первый диапазон для vlan 100
subnet 192.168.100.0 netmask 255.255.255.0 {
       range 192.168.100.150 192.168.100.200;
       option domain-name-servers 192.168.100.1;
       option routers 192.168.100.1;
}

##второй диапазон для vlan 200
subnet 192.168.200.0 netmask 255.255.255.0 {
       range 192.168.200.150 192.168.200.200;
       option domain-name-servers 192.168.200.1;
       option routers 192.168.200.1;
}


=====

/etc/default/isc-dhcp-server 
                                                                             
# Defaults for isc-dhcp-server (sourced by /etc/init.d/isc-dhcp-server)

# Path to dhcpd's config file (default: /etc/dhcp/dhcpd.conf).
DHCPDv4_CONF=/etc/dhcp/dhcpd.conf
#DHCPDv6_CONF=/etc/dhcp/dhcpd6.conf

# Path to dhcpd's PID file (default: /var/run/dhcpd.pid).
DHCPDv4_PID=/var/run/dhcpd.pid
#DHCPDv6_PID=/var/run/dhcpd6.pid

# Additional options to start dhcpd with.
#       Don't use options -cf or -pf here; use DHCPD_CONF/ DHCPD_PID instead
#OPTIONS=""

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
#       Separate multiple interfaces with spaces, e.g. "eth0 eth1".
INTERFACESv4="enp0s8" (если в vlan то указываем имя влана например enx.100) если несколько вланов то просто перечисляем так: 
INTERFACESv4="enx.100 enx.200"
INTERFACESv6=""

====

Посмотреть выданные ip адреса:

sudo nano /var/lib/dhcp/dhcpd.leases

3) DNS

sudo apt install bind9

/etc/bind/named.conf.options

acl testLan {
        192.168.100.0/24;
        192.168.200.0/24;
        localhost;
};

options {
        directory "/var/cache/bind";

        forwarders {
                1.1.1.1;
                8.8.4.4;
        };

        recursion yes;
        allow-query { testLan; };

        dnssec-validation auto;
        listen-on-v6 { any; };
};

4)NAT

sudo iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE

enp0s3 //интерфейс который смотрит в интернет

sudo nano /etc/sysctl.d/99-sysctl.conf

Раскоментировать 
# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1

Затем: 

sudo sysctl -p

Комментариев нет:

Отправить комментарий