LINUX.ORG.RU

Сообщения Shprot

 

Какой параметр dhcp-socket-type в kea лучше указать?

В процессе знакомства с DHCP-сервером kea, обратил внимание на инфо DHCPSRV_CFGMGR_SOCKET_TYPE_DEFAULT "dhcp-socket-type" not specified , using default socket type raw, говорит о том, что в конфиге не установлен тип сокета, поэтому по умолчанию будет заюзан raw.

В описании example файла конфига упомянуто, что дефолтный тип raw гарантирует получение всех пакетов клиентами, даже у которых еще нет IPv4-адреса. Однако, если Ваш трафик ретранслируется, то лучше использовать UDP-сокеты.

В моём понимании ретрансляция трафика это когда dhcp-сервер неавторитарный, но у меня это пограничный маршрутизатор и в сравнении с заброшенным isc-dhcp, в kea опции authoritative нет.

Так в каком лучше виде указать параметр dhcp-socket-type…?

 ,

Shprot
()

Возможна ли магия или мистика…?

Начну с того, что я ничего запрещённого не употребляю и всегда в трезвом уме.

В общем на домашней лабе для тестов с пихой развёрнута VM’ка с выходом в мир. Вчера вечером не смог зайти по доменному имени, но было уже поздно, думаю разберусь завтра и пошёл спать.

Сегодня подключаюсь по VNC и слегка опешил. У меня там отобразилась вот такая картина. Я взял платочек, снял очки, протёр их тщательно, надел и взглянул ещё раз. Картина была та же самая. Рестартую этого гостя с хоста и наблюдаю что происходит VNC. В меню граб единственный вариант загрузки — это TinyInstaller Windows и всё!

По клавише с попадаю в shell граба, командую ls вижу (hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1).

Да что за хрень?

Останавливаю рабочего гостя, добавляю в его конфиг диск из гостя с пихой.

virsh edit deb
<disk type='block' device='disk'>
    <driver name='qemu' type='raw' cache='none' io='native' discard='unmap'/>
    <source dev='/dev/mapper/vgdata-testphp--mirror'/>
    <target dev='vdb' bus='virtio'/>
    <address type='pci' domain='0x0000' bus='0x09' slot='0x00' function='0x0'/>
</disk>

virsh start deb

lsblk
NAME    MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sr0      11:0    1  1024M  0 rom  
vda     254:0    0     6G  0 disk 
├─vda1  254:1    0   487M  0 part /boot
└─vda2  254:2    0   5.5G  0 part 
  └─v-l 253:0    0   5.5G  0 lvm  /
vdb     254:16   0   300G  0 disk 
├─vdb1  254:17   0    49M  0 part 
├─vdb2  254:18   0   400M  0 part 
└─vdb3  254:19   0 299.6G  0 part 

Отлично! Но я помню что у меня разметка там была lvm ибо уже год как ушёл на вольюм манагер. Командую

vgchange -ay
  1 logical volume(s) in volume group "v" now active

В смысле 1…?!?

Хорошо, смонтируем vdb3

mount /dev/vdb3 /mnt
ls -l /mnt
total 1441849
drwxrwxrwx 1 root root          0 Jun 21  2022 '$Recycle.Bin'
-rwxrwxrwx 1 root root          1 Jun 18  2013  BOOTNXT
-rwxrwxrwx 1 root root       9872 Jan 27  2024  bootsqm.dat
lrwxrwxrwx 2 root root         10 Aug 23  2013 'Documents and Settings' -> /mnt/Users
-rwxrwxrwx 1 root root 1476395008 Dec 21  2024  pagefile.sys
drwxrwxrwx 1 root root          0 Aug 23  2013  PerfLogs
drwxrwxrwx 1 root root       4096 Aug 23  2013  ProgramData
drwxrwxrwx 1 root root       4096 Aug 23  2013 'Program Files'
drwxrwxrwx 1 root root       4096 Aug 23  2013 'Program Files (x86)'
drwxrwxrwx 1 root root       4096 Jan 27  2024 'System Volume Information'
drwxrwxrwx 1 root root       4096 Jun 21  2022  Users
drwxrwxrwx 1 root root      24576 Oct 28 19:26  Windows

Йопа-мать!

Судя по дате, винда была поставлена 11 лет назад, но как…?!?

ls -l /mnt/Users/
total 21
drwxrwxrwx 1 root root 8192 Jun 21  2022  Administrator
lrwxrwxrwx 2 root root   16 Aug 23  2013 'All Users' -> /mnt/ProgramData
drwxrwxrwx 1 root root 8192 Mar 22  2014  Default
lrwxrwxrwx 2 root root   18 Aug 23  2013 'Default User' -> /mnt/Users/Default
-rwxrwxrwx 1 root root  174 Aug 23  2013  desktop.ini
drwxrwxrwx 1 root root 4096 Aug 23  2013  Public

Из юзеров только администратор. По дате он заведён летом 2022 года

Начнём с того, что дома с виндой я не работаю ВООБЩЕ!!! Никто подключиться к лабе не мог ибо подключение только у меня. Самой лабе год отроду. Как туда залетела винда из прошлого?

Как-бы этот гость был для говнокода и для тестов. Данные потерять не страшно.

P.S> У психиатра на учёте не состою, как вначале сказал ничего запрещённого не употребляю

Перемещено hobbit из general

 , ,

Shprot
()

Hairpin в nftables.

Есть доменное имя example.com.
У регистратора прописана DNS-запись типа А на адрес 1.2.3.4

Есть локальная сеть 192.168.1.0/24
Есть в этой локальной сети веб-сервер 192.168.1.100

Извне доступ организован правилом nft add rule ip nat chain PREROUTING iifname "eno1" tcp dport { 80, 443 } dnat to 192.168.1.100 и всё работает, но не соображу, как прописать в nftables правило чтоб можно было попасть на веб-сервер из локальной сети?

Тут описана технология Hairpin по аналогии с микротом, но видимо не пойму как это на nftables положить.

 ,

Shprot
()

Сеть для qemu-kvm. How to...?

Домашняя лаба - qemu-kvm

Решил убрать лишнее звено (аппаратный маршрутизатор микрот фтопку) и на хосте (не на госте) виртуализации развернуть программный маршрутизатор из предназначенных для этого православных пакетов (kea, bind, nftables).

Есть опыт с заведением несколько vlan в один физический интерфейс хоста qemu-kvm, а с него уже снимать теги и отдавать определённые сети на гостя, но что-то абстрагированное мышление в данный момент не работает.

Для 3-х компов у меня сеть - 172.16.1.248/29
Для вай-фая - 172.16.1.192/27
Необходимо для виртуалок выделить сеть - 172.16.1.224/28

Создал интерфейс

cat /etc/systemd/network/vlan-qemu.netdev 
[NetDev]
Name=vlan-qemu
Kind=vlan

[VLAN]
Id=28
cat /etc/systemd/network/vlan-qemu.network
[Match]
Name=vlan-qemu

[Network]
Address=172.16.1.225/28

Рестартую systemctl restart systemd-networkd и ничего не происходит. Ну то есть интерфейс vlan-qemu в ip a не появляется. Предполагаю, что мне созданный влан надо привязать к физическому интерфейсу, но зачем? У меня же виртуалки там же, где и маршрутизатор. Физический интерфейс для этого не нужен. Если мне понадобится (а мне понадобится) гонять трафик куда-то, то я задействую уже маршрутизацию сети, которая как раз уже на физическом интерфейсе.

 , ,

Shprot
()

Nftables. Варианты реализации

Пытаюсь углубиться в nft. Практически везде учат так. Запрещаем всё, а потом разрешаем что необходимо

table ip filter {
    chain input {
        type filter hook input priority filter; policy drop;
            правило 1 accept
            правило 2 accept
            ...
	}

Наткнулся на мануал, где чел сперва описал что разрешить, а в самом низу уже запретил остальное

table ip filter {
    chain input {
        type filter hook input priority filter; policy accept;
	    правило 1 accept
	    правило 2 accept
            counter drop
        }

Оба варианта рабочие, но сто-пудово сетевые оракулы аргументируя раскритикуют какой-то из. Хотелось бы узнать мнение

 , ,

Shprot
()

Kea (dhcp) Ваше мнение

Пролог (можно не читать и перейти сразу к вопросу)

По всей видимости все бренды, стремящиеся автоматизировать и упростить настройку какой-либо железяки или софта, способствуют некой деградации специалиста. С сожалением вынужден согласится, что меня это затронуло. Когда начался микротиковский хайп, я как и все восторгался чуваками, которые по сравнению с циской продают своё твАрение по демократичным ценам. Начал изучать настройки и достался мне значит нахаляву вскоре прикупил себе домой RB760iGS. Отстроил неплохую сеть на с десяток девайсов, пару вланчиков, мелкому спиногрызу интернет по расписанию, DNS over HTTPS, бесшовный CAPsMAN и прочие плюхи.

Пообщался с одним дядькой, который параноит политикой, типа «станет Латвия недружественной для нас и во все Ваши микроты с очередной прошивкой втулят бэкдор и поставят раком всю сеть, ну или чего-нибудь ещё, что можно плохого придумать».

Понятно что «Бояться саранчи - не сеять и хлеба», но навело меня это на мысль, что я как-бы наигрался уже с цисками, микротами, пфсенсами и т. п. Захотелось олдскульно собрать всё рученьками, благо они на сегодняшний день прямые и растут из плечь, а не из жёпоньки…=) Поставил я значит старый-добрый isc-dhcp-server, bind и помнится там можно было как-то настроить динамическое обновление зон. Естессна за маном полез в гугл и наткнулся на то, что проект isc-dhcp-server уже как 2 года заброшен, а на смену ему пришёл новый проект Kea. Разрабы кстати как я понял те же ребята.

Сопсна сам вопрос

У кого в проде крутится Kea…? Ваше мнение об использовании. Возможно есть какие недоработки, баги или подводные камни

P.S> Или может ситуация аналогична с nftables, народ сегодня не особо торопиться с iptables’ов переходить.

 , ,

Shprot
()

После обновления система не видит LUKS

Что я делаю:

Boot usb in live mode

cryptsetup luksOpen /dev/mmcblk2p2 gentoo
Enter passphrase for /dev/mmcblk2p2:

Смотрю что там открылось

lsblk
NAME                    MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
loop0                     7:0    0 506.3M  1 loop  /run/rootfsbase
sda                       8:0    1  14.4G  0 disk  
├─sda1                    8:1    1   250K  0 part  
├─sda2                    8:2    1   2.8M  0 part  
├─sda3                    8:3    1 593.1M  0 part  /run/initramfs/live
└─sda4                    8:4    1   300K  0 part  
mmcblk2                 179:0    0  29.1G  0 disk  
├─mmcblk2p1             179:1    0   255M  0 part  
└─mmcblk2p2             179:2    0  28.9G  0 part  
  └─gentoo              253:0    0  28.9G  0 crypt 
    └─vg_system-root_lv 253:1    0  28.9G  0 lvm   
mmcblk2boot0            179:8    0     4M  1 disk  
mmcblk2boot1            179:16   0     4M  1 disk  

Факин щет! Я точно помню, что при разметке диска указывал имя вольюм группе gentoo, а имя логическому разделу root, зуб даю (металлокерамический), но после обновления группа стала vg_system, а диск root_lv.

Что же нам скажет lvdisplay

  --- Logical volume ---
  LV Path                /dev/vg_system/root_lv
  LV Name                root_lv
  VG Name                vg_system
  LV UUID                TjkIQw-bcWN-BWiw-N04Z-Z8qX-szzF-mktDY2
  LV Write Access        read/write
  LV Creation host, time livecd, 2024-09-30 10:56:22 +0000
  LV Status              available
  # open                 0
  LV Size                28.85 GiB
  Current LE             7386
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1

Йоптыть, ну конечно! По данным из LV Path и VG Name имена группы томов и имя диска изменились.

Смотрим что с LVM

lvmdiskscan
  /dev/live-base     [    <506.34 MiB] 
  /dev/mapper/gentoo [      28.85 GiB] LVM physical volume
  /dev/mmcblk2p1     [     255.00 MiB] 
  /dev/sda2          [       2.81 MiB] 
  /dev/mmcblk2p2     [      28.87 GiB] 
  /dev/sda3          [     593.14 MiB] 
  /dev/mmcblk2boot0  [       4.00 MiB] 
  /dev/mmcblk2boot1  [       4.00 MiB] 
  1 disk
  6 partitions
  1 LVM physical volume whole disk
  0 LVM physical volumes

Аткивирую lvm тома

vgchange -ay
1 logical volume(s) in volume group "vg_system" now active

Монтирую lvm и бут разделы

mount /dev/mapper/vg_system-root_lv /mnt/gentoo/
mount /dev/mmcblk2p1 /mnt/gentoo/boot/

Смотрим

lsblk /dev/mmcblk2
NAME                    MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINTS
mmcblk2                 179:0    0 29.1G  0 disk  
├─mmcblk2p1             179:1    0  255M  0 part  /mnt/gentoo/boot
└─mmcblk2p2             179:2    0 28.9G  0 part  
  └─gentoo              253:0    0 28.9G  0 crypt 
    └─vg_system-root_lv 253:1    0 28.9G  0 lvm   /mnt/gentoo

Отлично! Переходим в каталог куда смонтировались, монтируем ФС и чрутимся

cd /mnt/gentoo
mount --types proc /proc /mnt/gentoo/proc 
mount --rbind /sys /mnt/gentoo/sys 
mount --rbind /dev /mnt/gentoo/dev
mount --bind /run /mnt/gentoo/run/
chroot /mnt/gentoo /bin/bash
source /etc/profile

Убеждаюсь что у меня включена поддержка luks и lvm в genkernel.conf

vim /etc/genkernel.conf
# Add LVM support
LVM="yes"

# Add LUKS support
LUKS="yes"

Генерирую initramfs с поддержкой необходимого

genkernel --lvm --luks initramfs
* Gentoo Linux Genkernel; Version 4.3.16
* Using genkernel configuration from '/etc/genkernel.conf' ...
* Running with options: --lvm --luks initramfs

* Working with Linux kernel 6.6.62-gentoo-dist for x86_64
* Using kernel config file '/usr/src/linux-6.6.62-gentoo-dist/.config' ...

* Current kernel's LOCALVERSION is set to '-gentoo-dist'; Will ignore set --kernel-localversion value '-x86_64' because kernel was not built ...

* initramfs: >> Initializing ...
*         >> Appending devices cpio data ...
*         >> Appending base_layout cpio data ...
*         >> Appending util-linux cpio data ...
*         >> Appending eudev cpio data ...
*         >> Appending devicemanager cpio data ...
*         >> Appending auxiliary cpio data ...
*         >> Appending busybox cpio data ...
*         >> Appending luks cpio data ...
*         >> Appending lvm cpio data ...
*         >> Appending modprobed cpio data ...
*         >> Appending modules cpio data ...
*         >> Deduping cpio ...
*         >> Pre-generating initramfs' /etc/ld.so.cache ...
*         >> Compressing cpio data (.xz) ...
* 
* You will find the initramfs in '/boot/initramfs-6.6.62-gentoo-dist.img'.

* WARNING... WARNING... WARNING...
* Additional kernel parameters that *may* be required to boot properly:
* - Add "dolvm" for LVM support
* - Add "crypt_root=<device>" for LUKS-encrypted root
* - Add "crypt_swap=<device>" for LUKS-encrypted swap

* Do NOT report kernel bugs as genkernel bugs unless your bug
* is about the default genkernel configuration...
* 
* Make sure you have the latest ~arch genkernel before reporting bugs.

Обращаем внимание на варнинги, которые говорят включить dolvm и криптованный рут в дополнительные параметры загрузки

Идём в /etc/default/grub и добавляем

GRUB_CMDLINE_LINUX="crypt_root=/dev/mmcblk2p2 root=/dev/mapper/vg_system-root_lv rootfstype=ext4 dolvm quiet"

Проверяем что в граб включены необходимые параметры

cat /etc/portage/package.use/grub 
sys-boot/grub mount device-mapper

Обновляем граб

grub-mkconfig -o /boot/grub/grub.cfg
Генерируется файл настройки grub …
Найден образ linux: /boot/vmlinuz-6.6.62-gentoo-dist
Найден образ initrd: /boot/amd-uc.img /boot/initramfs-6.6.62-gentoo-dist.img
Найден образ linux: /boot/vmlinuz-6.6.58-gentoo-dist
Найден образ initrd: /boot/amd-uc.img /boot/initramfs-6.6.58-gentoo-dist.img
Предупреждение: os-prober не будет запущен для обнаружения других загрузочных разделов.
Их системы не будут добавлены в загрузочные настройки GRUB.
Прочтите документацию на параметр GRUB_DISABLE_OS_PROBER.
Добавляется элемент загрузочного меню для настроек микропрограммы UEFI …
завершено

Смущает размер initramf, который почему-то стал меньше, в сравнении с предыдущим ядром

ls -l boot | grep init
-rwxr-xr-x 1 root root 31886278 ноя  8 13:27 initramfs-6.6.58-gentoo-dist.img
-rwxr-xr-x 1 root root 12276100 дек  8 19:07 initramfs-6.6.62-gentoo-dist.img
-rwxr-xr-x 1 root root 12277464 дек  8 16:42 initramfs-6.6.62-gentoo-dist.img.old

Рестарюсь и загрузка вываливается -> в это <-

Я вангую что initramfs собирается без luks’а.

пАчИму…?!?

 , ,

Shprot
()

Как заставить DHCP отображать локальное времени?

В логах ISC-DHCP-SERVER время отражается UTC

cat /var/lib/dhcp/dhcpd.leases
lease 172.16.3.4 {
  starts 1 2024/12/02 01:05:44;
  ends 1 2024/12/02 01:15:44;
  cltt 1 2024/12/02 01:05:44;
  binding state active;
  next binding state free;
  rewind binding state free;
  hardware ethernet 52:54:00:7a:4f:30;
  uid "\001RT\000zO0";
  set vendor-class-identifier = "MSFT 5.0";
  set ddns-fwd-name = "test01.examp.le";
  set ddns-txt = "31e78d9a4315d82086018e82c56ab364d2";
  set ddns-rev-name = "4.3.16.172.in-addr.arpa.";
  client-hostname "test01";
}

Но в арендованном адресе на хосте показывает время правильное
Хотелось бы чтоб время в логах было местное

timedatectl 
               Local time: Mon 2024-12-02 11:06:01 +10
           Universal time: Mon 2024-12-02 01:06:01 UTC
                 RTC time: Mon 2024-12-02 01:06:01
                Time zone: Asia/Vladivostok (+10, +1000)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

 ,

Shprot
()

NetworkManager заворачивает весь трафик в туннель OpenVPN, хотя в конфиге нет такого параметра

Как-то странно (из темы вопроса) происходит. При подключении через NM подобные сервисы показывают IP сервера ovpn, но если подключиться консолью, скомандовав sudo openvpn --config client.ovpn, IP адрес клиента неизменный.

cat /etc/openvpn/server/server.conf

port 39876
proto udp
dev tun
ca keys/ca.crt
cert keys/server.crt
key keys/server.key
dh keys/dh.pem
topology subnet
server 192.168.56.224 255.255.255.224
# Домашняя сеть
route 172.16.10.96 255.255.255.248
client-to-client
client-config-dir ../ccd
ifconfig-pool-persist /var/log/openvpn/ipp.txt
keepalive 10 120
tls-auth keys/ta.key 0
cipher AES-256-GCM
max-clients 32
user nobody 
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
verb 3
explicit-exit-notify 1

cat test/client.ovpn 

client
dev tun
proto udp
remote a.b.c.d
port 39876
resolv-retry infinite
auth-nocache
remote-cert-tls server
ca ca.crt
cert test.crt
key test.key
tls-client
tls-auth ta.key 1
cipher AES-256-GCM
persist-key
persist-tun
verb 3

Так как-бы не есть хорошо. На сервере канал меньше, чем на клиенте. Получается что клиент может забить его весь

 , ,

Shprot
()

OSPF между Mikrotik и Debian

Впервые делаю связку OSPF между микротом и debian’ом и не совсем получается.

Дано:
Внешние IP:
Микрот - 1.1.1.1
Debian - 2.2.2.2

Туннель:
Микрот - 10.0.0.1/30
Debian - 10.0.0.2/30

Что было сделано: На микроте:

/interface ipip add !keepalive remote-address=2.2.2.2 local-address=1.1.1.1
/ip address add address=10.0.0.1/30 interface=ipip-tunnel1

На Debian:

cat /etc/systemd/network/ipip-home.netdev

[NetDev]
Name=ipip-home
Kind=ipip

[Tunnel]
Remote=1.1.1.1
Local=2.2.2.2
cat /etc/systemd/network/ipip-home.network

[Match]
Name=ipip-home

[Network]
Address=10.0.0.1/30
cat /etc/systemd/network/isp.network

[Match]
Name=enp10s0

[Network]
Description=RosTelekom network
Address=Внешний
Gateway=Шлюз
DNS=ДНС’ы
LinkLocalAddressing=no
IPv6AcceptRA = no
Tunnel=ipip-home

Смотрим что получилось
На микротике

/interface/ipip/ print 
0 R ipip-tunnel1  auto        1480  1.1.1.1  2.2.2.2    inherit

На Debian

ip a
ipip-home@enp10s0: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ipip 2.2.2.2 peer 1.1.1.1
    inet 10.0.0.1/30 brd 10.0.0.3 scope global ipip-home
       valid_lft forever preferred_lft forever

Добавил на микроте OSPF:

/routing ospf instance add name=instance1 router-id=10.0.0.2
/routing ospf area add instance=instance1 name=backbone
/routing ospf interface-template add area=backbone networks=10.0.0.0/30 type=ptp
/routing ospf interface-template add area=backbone networks=172.16.96.0/29 passive

Добавил на Debian OSPF:

vim /etc/frr/daemons

ospfd=yes
Esc + Z + Z

systemctl restart frr

vtysh
confugure terminal
(conf)$ ip forwarding
(conf)$ router ospf
(conf-router)$ network 172.16.3.0/27 area 0
(conf-router)$ network 10.0.0.0/30 area 0
(conf-router)$ neighbor 10.0.0.2
(conf-router)$ exit
(conf)$ interface ipip-home
(conf-if)$ ip ospf network broadcast
(conf-if)$ end
$ wr
$ exit

systemctl restart frr

Хэллоуйки посылает, но почему-то соседства не находит

tcpdump -i ipip-home

tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on ipip-home, link-type RAW (Raw IP), snapshot length 262144 bytes
07:11:49.693556 IP 10.0.0.1 > ospf-all.mcast.net: OSPFv2, Hello, length 48
07:11:52.708093 IP T2.primorye.net.ru > ospf-all.mcast.net: OSPFv2, Hello, length 44
07:11:59.694006 IP 10.0.0.1 > ospf-all.mcast.net: OSPFv2, Hello, length 48
07:12:02.704408 IP T2.primorye.net.ru > ospf-all.mcast.net: OSPFv2, Hello, length 44
07:12:09.694024 IP 10.0.0.1 > ospf-all.mcast.net: OSPFv2, Hello, length 48
07:12:10.019988 IP T2.primorye.net.ru.5678 > 255.255.255.255.5678: UDP, length 124
07:12:12.707207 IP T2.primorye.net.ru > ospf-all.mcast.net: OSPFv2, Hello, length 44
07:12:19.694168 IP 10.0.0.1 > ospf-all.mcast.net: OSPFv2, Hello, length 48
07:12:22.704249 IP T2.primorye.net.ru > ospf-all.mcast.net: OSPFv2, Hello, length 44

Может гуру модели OSI подскажут где я что не доглядел…?!?

 , , ,

Shprot
()

Bind9 с нестандартным битом маски

Есть понимание как настраиваются зоны DNS-сервера bind9, где по дефолту 24-ый бит маски обратной зоны не указывается.

cat /etc/bind/named.conf.local
zone "1.168.192.in-addr.arpa" {
     type master;
     file "/var/lib/bind/db.192.168.1";
     allow-transfer { 192.168.1.1; };
};

Хочу понять как настроить обратную DNS-зону например 26-ого бита маски, если я решу попилить сеть на 4 (192.168.1.0/26, 192.168.1.64/26, 192.168.1.128/26, 192.168.1.192/26)

Правильно я понимаю, что в наименовании зоны необходимо указывать количество хостов сети и бит маски?

zone "64-26.1.168.192.in-addr.arpa" {
     type master;
     file "/var/lib/bind/db.192.168.1";
     allow-transfer { 192.168.1.1; };
};

 , ,

Shprot
()

Для чего нужен и какую роль играет тип ФС носителя?

В линуксе вроде давно, но страшно признать, что задался простым вопросом, на который не могу нагуглить ответ.

В общем решил закинуть бомбического музла в своё ведро на колёсах, дабы при виде ссыкух в коротких юбках, сделать погромче и навалить боком.

Накачал Софию Ротару, Николая Баскова и… сборников на свой вкус, воткнул флешечку в порт, скомандовал fdisk /dev/sdb, создал раздел, бла-бла-бла и при указании типа файловой системы задумался. А нахрена это промежуточное звено? Для эксперимента смело указываю тип 83 Linux (разметка mbr, так как магнитола держит только fat32), а при форматировании говорю mkfs, что хочу vfat -F32 и флешка форматится в fat32 и видится как fat32.

Сопсна вопрос из заголовка - зачем нужен тип файловой системы?

 , ,

Shprot
()

Как добавить второй физический интерфейс в гостя qemu, чтоб он пропускал trunk

Есть железный старенький Dell, на котором qemu-kvm. Есть задача развернуть gateway на виртуальном хосте гипервизора. На данный момент в гипервизор на физический интерфейс заходит ISP с 27-ой маской сети. На нём поднят bridge. С бриджа взят один из IP ISP’а и сам интернет на gateway работает.

На гипервизоре

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# Физические интерфейсы
iface eno1 inet manual

auto eno2
iface eno2 inet manual

auto eno3 # ISP 1.1.1.2/27
iface eno3 inet manual

iface eno4 inet manual
cat /etc/network/interfaces.d/br0 
# Bridge 0
auto br0
iface br0 inet static
address 1.1.1.2/27
netmask 255.255.255.240
gateway 1.1.1.1
dns-nameservers 1.1.1.1 
bridge_ports eno3
bridge_stp off # отключаем протокол Spanning Tree
bridge_waitport 0 # убираем задержку до того, как порт станет доступен
bridge_fd 0 # убираем задержку переадресации

Не совсем понимаю как добавить ещё один физический сетевой интерфейс в гостя gateway, только так, чтоб с isc-dhcp-server, он ещё тегированые VlanID выпускал, которые на управляемом коммутаторе уже снимались. Вот пока что на gateway

<interface type='bridge'>
  <mac address='52:54:00:26:eb:48'/>
  <source bridge='br0'/>
  <target dev='vnet8'/>
  <model type='virtio'/>
  <alias name='net0'/>
  <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>

Ещё надо чтоб гость на том же гипервизоре получал IP с gateway.
В общем надо поднять транковый интерфейс

 , , ,

Shprot
()

Возможно ли отвязать TV приставку SML-5050 от ростелекома?

В один из выходных дней я получил от супруги задание разобрать свой хлам на выделенной для меня (во всём доме только одной) полочке. Разбирая то, сё, третее, пятое…десятое я нактнулся на TV-приставку SML-5050. Покрутив-повертев её я вспомнил, что как-то знакомый рассказывал, что прошил подобную и залив туда плейлист с кучей каналов, предварительно настроив мультикаст на домашнем роутере, вообще отказался от ТВ услуг провайдера. Загоревшись желанием осуществить подобное, я схватился за мышку. Открыв старый-добрый гугл я несдержанно и жадно вколачивал в поисковик что-то типа «SML-5050 прошивка», «SML-5050 firmware», «SML-5050 how to flash» и т.п., но всё, что более-менее подходило, направляло меня на 4pda. К сожалению, там лежат прошивки только ростелекома, винка и какой-то NEJ NET TV (Польский вроде).

Сопсна сам вопрос! Возможно ли отвязать каким-то чудесным образом эту железяку от провайдера и залить в неё подготовленный заранее плейлист? Кто-нибудь вообще сталкивался с таким?

Перемещено hobbit из general

 ,

Shprot
()

SQL. Связи двух таблиц. Ошибка

На данный момент в БД я ещё мал и глуп, не видал больших *** проектов…=) В общем есть две таблицы usrs & month.

+----------+------------------------+------+-----+---------+----------------+
| Field    | Type                   | Null | Key | Default | Extra          |
+----------+------------------------+------+-----+---------+----------------+
| id       | int(11)                | NO   | PRI | NULL    | auto_increment |
| surname  | varchar(100)           | NO   |     | NULL    |                |
| name     | varchar(50)            | NO   |     | NULL    |                |
| photo    | varchar(50)            | NO   |     | NULL    |                |
| phone    | decimal(10,0) unsigned | NO   |     | NULL    |                |
| birthday | int(8) unsigned        | NO   |     | NULL    |                |
| id_month | int(11)                | NO   |     | NULL    |                |
+----------+------------------------+------+-----+---------+----------------+
+-------+------------+------+-----+---------+----------------+
| Field | Type       | Null | Key | Default | Extra          |
+-------+------------+------+-----+---------+----------------+
| id    | int(11)    | NO   | PRI | NULL    | auto_increment |
| month | varchar(8) | NO   |     | NULL    |                |
+-------+------------+------+-----+---------+----------------+

Хочу сделать связь с поля id_month таблицы usrs до таблицы month поля id.

MariaDB [test]> ALTER TABLE `usrs` ADD FOREIGN KEY (`id_month`) REFERENCES `month` (`id`);
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`test`.`#sql-alter-212-6e1`, CONSTRAINT `#sql-alter-212-6e1_ibfk_1` FOREIGN KEY (`id_month`) REFERENCES `month` (`id`))

При попытке их связать вываливается ошибка «Не удается добавить или обновить дочернюю строку». ЧЯДНТ…?!?

 ,

Shprot
()

Отображение шрифтов и символов во fluxbox

Всю жизнь сидел на xfce4. Решил попробовать флюксу. Вроде зашла, но не совсем понимаю что необходимо доставить, чтоб отображались символы и Азиатские (как я понял) шрифты. Подскжите…=)

 , ,

Shprot
()

Простой поиск на PHP в БД POSTGRESQL

Ох и закидают меня сейчас тухлыми томатами за вопрос про пиху, но я к этому морально подготовился…=)

В общем изучая этот «прекрасный» ЯП в паре со SQL, а именно с постгрёй, хочу разобраться как реализовывается поиск. Пока что простой. Вот пример БД

testdb=# SELECT * FROM users ORDER BY id;
 id | id_birthday | surname  |  name    | cash 
----+-------------+----------+----------+------
  1 |        1604 | Иванов   | Иван     |   12
  2 |         502 | Петрова  | Евлампия |    5
  3 |        3112 | Головач  | Елена    |    9
(3 rows)

Вот кусок индексного файла

<body>
  <p>
    <h3>Введите свою дату рождения</h3>
    <form action="index.php" method="post">
      <input type="search" name="search">
      <button type="submit" name="submit" value="search">Найти</button>
    </form>
  </p>
  
  <!-- Вывод всех пользователей для понимания что в БД вообще есть -->
  <table border="2">
    <thead>
      <tr>
        <th>id</th>
        <th>Фамилия</th>
        <th>Имя</th>
        <th>Денег в кармане</th>
      </tr>
    </thead>
    <tbody>
      <?php include 'conndb.php';
        $sql = 'SELECT * FROM users';
        $query = pg_query($conndb, $sql);
        while ($result = pg_fetch_array($query)) {
          echo "
            <tr>
              <td>{$result['id_birthday']}</td>
              <td>{$result['surname']}</td>
              <td>{$result['name']}</td>
              <td>{$result['cash']}</td>
            </tr>";
        }
      ?>
    </tbody>
  </table>
  <!-- Конец вывод всех пользователей -->
</body>

В самом верху html-форма, в которой необходимо ввести искомое. Поиск хочу сделать по дате рождения (id_birthday). Перелопатив гугл, везде в основном поиск реализуется на мускуле либо на марии. С ПГ очень мало материала. Подскажите как реализовать задуманное.
P.S> буду благодарен за актуальные материалы «без воды» для изучения PG + PHP

Перемещено Dimez из development

 , ,

Shprot
()

iptables vs nftables

Я дико извиняюсь за плод очередной заезженной темы, но либо на фоне развития деменции в свои 40 лет (шутка), либо всё-таки в ввиду слабого понимания новых плюшек фреймворка я не совсем понимаю надо ли переходить на nftables…?

На сегодняшний день потребовалось развернуть корпчат, который голым шепталой смотрит наружу. Сопсна чем прикрыть? Старым добрым iptables’ом, который знаком с детства или же новым, молодёжным nftables’ом?

Оставить открытыми надо только http, https и coturn порты.

Вопрос номер два. Не вижу инфы как nft работает с SIP-сканерами. На вокслинке вроде есть ман как настроить базово, но это как-то по-детЦки. Сможет ли nft пройти например аудит SIPVicious.

Если взглянуть на площадки вакансий, то нигде (по крайней мере мною) не встречается требование nft. Везде только iptables.

В общем парняги, поделитесь (только не срачем) стоит ли быть в тренде или остаться скуфом…? =)

 , ,

Shprot
()

LUKS + initramfs не видит eMMC

Продолжая эксперименты на своём многострадальном x205ta столкнулся с очередной проблемой, за ответом на вопрос которой пришёл сюда.

Решил поиграться с шифрованием LUKS + LVM. В GRUB добавлены параметры для загрузки

GRUB_CMDLINE_LINUX="crypt_root=/dev/mmcblk2p2 root=/dev/mapper/gentoo-root rootfstype=ext4 dolvm quiet"

Всё встало как обычно. GRUB дружелюбно приветствует, но когда доходит дело до Enter passphrase for (device), вываливается ошибка (прошу прощение за фото, в лом было печатать :) ) типа не найден люкс девайс. Initramfs собран так

genkernel --lvm --luks initramfs

Гугл говорит что в iniramfs надо добавить mmc_block и mmc_core, но не совсем понимаю как.
Подскажите как так собрать… :(

 , , , ,

Shprot
()

LVM на RAID или LVM RAID?

Заранее извинюсь за компетентность и готов к комментариям, которые будут требовать сменить профессию, но на то он и форум, чтоб задавать вопросы.

В общем дома небольшая лаба на антресольке, внутри которой QEMU-KVM на 2 HDD в RAID 1 с обычной разметкой на /dev/md0.
С большим опозданием я принял к сведению тот факт, что logical volume manager довольно-таки неплохой и его непременно надо юзать!
Так как ВМ’ок на лабе немного и их есть куда временно переместить, хотелось бы переделать хранение под них. Сопсна велком ту гугл, который мне сказал (если я правильно понял) что можно на хосте гипервизора создать RAID (в моём случае первый) и на нём разметить LVM, но как оказалось есть ещё LVM RAID 1, как например описывается тут. В первом случае, как я понял, у меня получится фиксированный диск /dev/md0, на котором я буду юзать плюшки LVM, изменяя его размеры и т.д., во втором у меня будет выигрыш вообще во всём. Я смогу увеличивать ещё и физическое место в будущем. Я склонен ко второму варианту. Подскажите у кого в практике было и такое и такое. Какой вариант по Вашему мнению использовать лучше?

Следом второй вопрос. А как это всё встанет на UEFI? Тут описывают как ПРАВИЛЬНО сделать uefi на raid, а как его правильно сделать на lvm…?

 ,

Shprot
()

RSS подписка на новые темы