Langsame DNS Antworten, TCP Offloading

Problem: Teilweise extrem verzögerte DNS Antworten. tcpdump meldet „bad udp cksum“.

Lösung: TCP Offloading auf VM Gast abschalten.

ethtool -K eth0 tx off rx off

Anschließend noch den Network-Stack neustarten:

systemctl restart systemd-networkd

ArchLinux: Setup meines KVM-Host

loadkeys de-latin1-nodeadkeys
fdisk -l
cfdisk /dev/sda #Alles nach bedarf partionieren. Ich habe mich für UEFI und GPT entschieden.
cfdisk /dev/sdb #Eine Partition für LVM
cfdisk /dev/sdc #Eine Partition für LVM
#fat32 für /dev/sda1
mkfs.ext4 /dev/sda2 #/        max
mkfs.ext2 /dev/sda3 #/var/log 1G
mkswap /dev/sda4 #1/2 RAM
swapon /dev/sda4
mount /dev/sda2 /mnt
mkdir -p /mnt/var/log/
mkdir -p /mnt/boot
mount /dev/sda3 /mnt/var/log/
mount /dev/sda1 /mnt/boot
# Ich betreibe meinen DHCP & DNS in einer VM, deshalb hier eine fixe IP:
nano /etc/systemd/network/static.network
#[Match]
#Name=en*
#
#[Network]
#DNS=8.8.8.8
#Address=192.168.2.254
#Gateway=192.168.2.1
systemctl restart systemd-networkd
ping archlinux.org # Sicherstellen das eine Internetverbindung vorliegt
pacstrap /mnt base grub efibootmgr openssh ntp vim htop net-utils bridge-utils libvirt qemu ebtables pm-utils
arch-chroot /mnt
# Wir betreten das eigentliche Hostsystem!
echo "host" >> /etc/hostname
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
vim /etc/vimrc # syntax on ; set background=dark
vim /etc/locale.gen # de_DE.UTF-8 UTF-8
locale-gen
vim /etc/vconsole.conf # KEYMAP=de-latin1-nodeadkeys
cd /etc/systemd/network/ # Für KVM brauch ich ein Bridged-Network
vim br0.netdev
# [NetDev]
# Name=br0
# Kind=bridge

vim br0.network
# [Match]
# Name=br0
#
# [Network]
# DNS=8.8.8.8
# Address=192.168.2.254
# Gateway=192.168.2.1

vim eth0.network
# [Match]
# Name=eth0
#
# [Network]
# Bridge=br0

vim /etc/resolv.conf # DoppeltDoppelt hälthält besserbesser
# nameserver 8.8.8.8
pvcreate /dev/sdb1 # Die beiden Platten werden in LVM eingebunden.
pvcreate /dev/sdc1 # Die logischen Laufwerke werden später von Libvirt angelegt.
mkinitcpio -p linux
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --boot-directory=/boot --recheck
grub-mkconfig -o /boot/grub/grub.cfg
systemctl enable sshd ntpd libvirtd systemd-networkd
passwd
#Ctrl-D , wir sind wieder im Livesystem
genfstab -Up /mnt >> /mnt/etc/fstab
umount -R  /mnt
reboot
loadkeys de-latin1-nodeadkeys
fdisk -l
cfdisk /dev/sda #Alles nach bedarf partionieren. Ich habe mich für UEFI und GPT entschieden.
cfdisk /dev/sdb #Eine Partition für LVM
cfdisk /dev/sdc #Eine Partition für LVM
#fat32 für /dev/sda1
mkfs.ext4 /dev/sda2 #/        max
mkfs.ext2 /dev/sda3 #/var/log 1G
mkswap /dev/sda4 #1/2 RAM
swapon /dev/sda4
mount /dev/sda2 /mnt
mkdir -p /mnt/var/log/
mkdir -p /mnt/boot
mount /dev/sda3 /mnt/var/log/
mount /dev/sda1 /mnt/boot
# Ich betreibe meinen DHCP & DNS in einer VM, deshalb hier eine fixe IP:
nano /etc/systemd/network/static.network
#[Match]
#Name=en*
#
#[Network]
#DNS=8.8.8.8
#Address=192.168.2.254
#Gateway=192.168.2.1
systemctl restart systemd-networkd
ping archlinux.org # Sicherstellen das eine Internetverbindung vorliegt
pacstrap /mnt base grub efibootmgr openssh ntp vim htop net-utils bridge-utils libvirt qemu ebtables pm-utils
arch-chroot /mnt
# Wir betreten das eigentliche Hostsystem!
echo "host" >> /etc/hostname
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
vim /etc/vimrc # syntax on ; set background=dark
vim /etc/locale.gen # de_DE.UTF-8 UTF-8
locale-gen
vim /etc/vconsole.conf # KEYMAP=de-latin1-nodeadkeys
cd /etc/systemd/network/ # Für KVM brauch ich ein Bridged-Network
vim br0.netdev
# [NetDev]
# Name=br0
# Kind=bridge

vim br0.network
# [Match]
# Name=br0
#
# [Network]
# DNS=8.8.8.8
# Address=192.168.2.254
# Gateway=192.168.2.1

vim eth0.network
# [Match]
# Name=eth0
#
# [Network]
# Bridge=br0

vim /etc/resolv.conf # DoppeltDoppelt hälthält besserbesser
# nameserver 8.8.8.8
pvcreate /dev/sdb1 # Die beiden Platten werden in LVM eingebunden.
pvcreate /dev/sdc1 # Die logischen Laufwerke werden später von Libvirt angelegt.
mkinitcpio -p linux
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --boot-directory=/boot --recheck
grub-mkconfig -o /boot/grub/grub.cfg
systemctl enable sshd ntpd libvirtd systemd-networkd
passwd
#Ctrl-D , wir sind wieder im Livesystem
genfstab -Up /mnt >> /mnt/etc/fstab
umount -R  /mnt
reboot

.bashrc: Farbige ManPages/less

Ich habe meine .bashrc um Farben für das Tool „less“ erweitert. less ist das Standardtool zur Darstellung der Manpages auf der Linux-Shell.

loadkeys de-latin1-nodeadkeys
fdisk -l
cfdisk /dev/sda #Alles nach bedarf partionieren. Ich habe mich für UEFI und GPT entschieden.
cfdisk /dev/sdb #Eine Partition für LVM
cfdisk /dev/sdc #Eine Partition für LVM
#fat32 für /dev/sda1
mkfs.ext4 /dev/sda2 #/        max
mkfs.ext2 /dev/sda3 #/var/log 1G
mkswap /dev/sda4 #1/2 RAM
swapon /dev/sda4
mount /dev/sda2 /mnt
mkdir -p /mnt/var/log/
mkdir -p /mnt/boot
mount /dev/sda3 /mnt/var/log/
mount /dev/sda1 /mnt/boot
# Ich betreibe meinen DHCP & DNS in einer VM, deshalb hier eine fixe IP:
nano /etc/systemd/network/static.network
#[Match]
#Name=en*
#
#[Network]
#DNS=8.8.8.8
#Address=192.168.2.254
#Gateway=192.168.2.1
systemctl restart systemd-networkd
ping archlinux.org # Sicherstellen das eine Internetverbindung vorliegt
pacstrap /mnt base grub efibootmgr openssh ntp vim htop net-utils bridge-utils libvirt qemu ebtables pm-utils
arch-chroot /mnt
# Wir betreten das eigentliche Hostsystem!
echo "host" >> /etc/hostname
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
vim /etc/vimrc # syntax on ; set background=dark
vim /etc/locale.gen # de_DE.UTF-8 UTF-8
locale-gen
vim /etc/vconsole.conf # KEYMAP=de-latin1-nodeadkeys
cd /etc/systemd/network/ # Für KVM brauch ich ein Bridged-Network
vim br0.netdev
# [NetDev]
# Name=br0
# Kind=bridge

vim br0.network
# [Match]
# Name=br0
#
# [Network]
# DNS=8.8.8.8
# Address=192.168.2.254
# Gateway=192.168.2.1

vim eth0.network
# [Match]
# Name=eth0
#
# [Network]
# Bridge=br0

vim /etc/resolv.conf # DoppeltDoppelt hälthält besserbesser
# nameserver 8.8.8.8
pvcreate /dev/sdb1 # Die beiden Platten werden in LVM eingebunden.
pvcreate /dev/sdc1 # Die logischen Laufwerke werden später von Libvirt angelegt.
mkinitcpio -p linux
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --boot-directory=/boot --recheck
grub-mkconfig -o /boot/grub/grub.cfg
systemctl enable sshd ntpd libvirtd systemd-networkd
passwd
#Ctrl-D , wir sind wieder im Livesystem
genfstab -Up /mnt >> /mnt/etc/fstab
umount -R  /mnt
reboot
loadkeys de-latin1-nodeadkeys
fdisk -l
cfdisk /dev/sda #Alles nach bedarf partionieren. Ich habe mich für UEFI und GPT entschieden.
cfdisk /dev/sdb #Eine Partition für LVM
cfdisk /dev/sdc #Eine Partition für LVM
#fat32 für /dev/sda1
mkfs.ext4 /dev/sda2 #/        max
mkfs.ext2 /dev/sda3 #/var/log 1G
mkswap /dev/sda4 #1/2 RAM
swapon /dev/sda4
mount /dev/sda2 /mnt
mkdir -p /mnt/var/log/
mkdir -p /mnt/boot
mount /dev/sda3 /mnt/var/log/
mount /dev/sda1 /mnt/boot
# Ich betreibe meinen DHCP & DNS in einer VM, deshalb hier eine fixe IP:
nano /etc/systemd/network/static.network
#[Match]
#Name=en*
#
#[Network]
#DNS=8.8.8.8
#Address=192.168.2.254
#Gateway=192.168.2.1
systemctl restart systemd-networkd
ping archlinux.org # Sicherstellen das eine Internetverbindung vorliegt
pacstrap /mnt base grub efibootmgr openssh ntp vim htop net-utils bridge-utils libvirt qemu ebtables pm-utils
arch-chroot /mnt
# Wir betreten das eigentliche Hostsystem!
echo "host" >> /etc/hostname
ln -sf /usr/share/zoneinfo/Europe/Berlin /etc/localtime
vim /etc/vimrc # syntax on ; set background=dark
vim /etc/locale.gen # de_DE.UTF-8 UTF-8
locale-gen
vim /etc/vconsole.conf # KEYMAP=de-latin1-nodeadkeys
cd /etc/systemd/network/ # Für KVM brauch ich ein Bridged-Network
vim br0.netdev
# [NetDev]
# Name=br0
# Kind=bridge

vim br0.network
# [Match]
# Name=br0
#
# [Network]
# DNS=8.8.8.8
# Address=192.168.2.254
# Gateway=192.168.2.1

vim eth0.network
# [Match]
# Name=eth0
#
# [Network]
# Bridge=br0

vim /etc/resolv.conf # DoppeltDoppelt hälthält besserbesser
# nameserver 8.8.8.8
pvcreate /dev/sdb1 # Die beiden Platten werden in LVM eingebunden.
pvcreate /dev/sdc1 # Die logischen Laufwerke werden später von Libvirt angelegt.
mkinitcpio -p linux
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --boot-directory=/boot --recheck
grub-mkconfig -o /boot/grub/grub.cfg
systemctl enable sshd ntpd libvirtd systemd-networkd
passwd
#Ctrl-D , wir sind wieder im Livesystem
genfstab -Up /mnt >> /mnt/etc/fstab
umount -R  /mnt
reboot

autoexec.cfg

Hier für die Nachwelt mal meine autoexec.cfg. Es wird einiges umgebaut, ich empfehle daher euch alles Durchzulesen und ggf. auch anzupassen. Neben meinem Buyscript wird das Viewmodel, Fadenkreuz und HUD umgebaut, plus ein wenig mehr.

Continue reading „autoexec.cfg“