Анон любит истории про жопу и говно.

Есть у нас вам.

Жопная история.

Работал в больнице на странной должности по «Гражданской обороне», иду мимо приемного покоя, выходит эксперт и хихикает. Ну спрашиваю, ще там? Не поверишь, отвечает эксперт — там бомж с толкушкой в жопе. Ну прохожу в больницу через приемник (там второй вход был, но интересно же). Действительно, лежит на каталочке дед под простыночкой, этим всем кверху. Рядом дежурный хирург суетится.

И тут я начинаю напевать «Колотушка тук-тук-тук, спит животное паук…». Еле успел выскочить — что-то в меня пульнули.

Про вписки.

Нажрались с другом, довольно богатым, в г. и девочек вызвали, точнее — вызвал он, я к тому времени давно уже накурился в обсолютные сопли. Утром просыпаемся с товарищем голые в одной постели.
— Дэн, у тебя дупа не болит?
— Нет. У меня тоже.
— Ну значит бл*ди были 🙂

Про админскую попойку.

В начале двухтысячных были популярны домовые и междомовые локалки, доступ в ФИДО, и соответственно, админо- и ФИДОпойки.

На даче сортиры называли телефонными будками (похоже же).

После организованной на даче фидо- и ЛВС- админопойки: «Какая сука облевала телефонную будку, испачкала телефонную трубку, разбросала веб-страницы, так еще и файл скачанный посреди будки валяется».

Неудачная сдача.

Препод по инженерной графике имел проблемы с дикцией. Студент сдает чертеж.
Препод: Пиздато!
Студент (офигевая): нуу.. нихуево.
Препод: «Без даты! Дата не проставлена на чертеже!».

Прогулка

Сходил тут погулял в лес


Два брата

Свет грибов

Реально, как будто бы светились, красиво, хз, передаст ли это фотография.


И один в поле гриб

Рябинка

Другие фото, в полном размере:

1 2 3 4 5 6 7 8 9 10 11 12

Добавление дополнительных network namespaces к уже настроенным.

Преамбула

Когда-то давно поднимал тему network namespaces (копия), механизма Linux, позволяющего на машине с одним физическим сетевым интерфейсом организовать несколько независимых сетевых стеков, т.е. виртуальных сетевых интерфейсов с разными настройками (IP-адресом, маршрутизацией, правилами IPTABLES и т.д.). Возник вопрос, как к уже настроенным сетевым неймспейсам добавить еще один.

Это не просто, а очень просто.

Итак, имеется система такой вот конфигурации:

А требуется нечто такое:

Добавление дополнительного network namespace’а

1. Создаем новый netspace с именем, например, linkns:

ip netns add linkns

2. Создаем два связанных между собой виртуальных сетевых интерфейса veth2 и veth3:

ip link add veth2 type veth peer name veth3

3. Поднимаем интерфейс veth2, который останется в основном неймспейсе:

ifconfig veth2 0.0.0.0 up

4. Подождали, интерфейс поднялся (для проверки вызываем ifconfig без параметров):

veth2: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 3a:8d:6a:40:b8:38  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

5. Ассоциируем veth3 с новым неймспейсом linkns:

ip link set veth3 netns linkns

6. Добавляем новый интерфейс (veth2) к интерфейсам ранее созданного моста br0

brctl addif <имя_моста> <имя_интерфейса>

brctl addif br0 veth2

Можно проверить список интерфейсов командой:

brctl show br0

Вывод команды:

bridge name     bridge id               STP enabled     interfaces
br0             8000.3a8d6a40b838       no              eth0
                                                        veth0
                                                        veth2

Теперь изначальная схема моста

Превращается в такую:

Включать/отключать физические сетевые интерфейсы или мост не нужно, все было сконфигурированно ранее. Осталось произвести настройки внутри namespace linkns:

1. Поднимаем сетевой интерфейс veth3 внутри неймспейса linkns и присваиваем ему IP.

ip netns exec linkns ifconfig veth3 192.168.0.21 netmask 255.255.255.0

2. Прописываем внутри нетспейса маршрут по умолчанию:

ip netns exec linkns ip route add default via 192.168.0.1 dev veth3 src 192.168.0.21

3. Поднимаем внутри namespace’а loopback-интерфейс:

ip netns exec linkns ifconfig lo 127.0.0.1

4. Если нужно, добавляем файлы конфигурации для namespace’а, например resolv.conf (копия)

5. Проверяем работоспособность неймспейса.

Проверяем сетевые устройства:

ip netns exec linkns ifconfig

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

veth3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.21  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::8c12:30ff:feda:fe06  prefixlen 64  scopeid 0x20<link>
        ether 8e:12:30:da:fe:06  txqueuelen 1000  (Ethernet)
        RX packets 55  bytes 4391 (4.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 17  bytes 1458 (1.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ping:

ip netns exec linkns ping 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=111 time=13.3 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=111 time=11.6 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=111 time=12.0 ms
...

и интернет:

ip netns exec linkns lynx google.com

ФАНФАРЫ!

Network namespeces, resolv.conf и прочие файлы конфигурации.

Когда писал заметку о сетевых неймспейсах, т.е. о том, как на одном компьютере с одной физической сетевой картой организовать несколько виртуальных сетевых интерфейсов с разными IP (копия), забыл упомянуть о маленьком, но важном моменте.

Все созданные виртуальные сетевые стеки, а эмулируется не только сетевая карта, но и весь стек вместе с маршрутизацией, правилами IPTABLES и т.д., можно и нужно по разному конфигурировать. И, естественно, есть возможность создать разные файлы конфигурации для разных namespaces.

Файлы конфигурации хранятся в каталоге /etc/netns/<имя_namespace>

Различный resolv.conf для разных namespace’ов.

Например, в основном неймспейсе есть файл /etc/resolv.conf в котором прописаны адреса DNS для основной системы:

nameserver 10.10.0.1
nameserver 10.10.0.200

И пусть в системе существует второй namespace с именем linkns и для него надо прописать DNS от Google (8.8.8.8 и 8.8.4.4):

1. Создаем каталог /etc/netns/linkns.
2. В каталоге создаем (или копируем готовый из /etc) файл resolv.conf.
3. Записываем в файл новые адреса DNS:

nameserver 8.8.8.8
nameserver 8.8.4.4

Аналогично можно поступить и с другими файлами конфигурации, например правилами IPTABLES (если ваша система поддерживает конфигурацию фаервола через конфигурационные файлы).

Депутатка

Ты писала ведь рассказы,
И стихи ты сочиняла.
Но от этого финансов
Много ты не получала.

А ведь надо много денег,
Очень клево быть богатой.
И ты стала, и ты стала,
И ты стала депутатом!

Пр:	Депутаты, депутаты,
	Президенты, президенты,
	Каждый месяц с беззаконья
	Получают дивиденты!
	
	(2 раза)

За тебя голосовали, 
Потому что твое слово
Било ядовитым жалом
По политикам и гадам

Ты была душой красива,
И читателей любила.
А сейчас на джипе ездишь -
На народ ты свой забила.

Пр.

Раз домой ты возвращалась,
Темной ночью из Госдупы
За закон голосовала,
Что продаст все наши души.

Из окна блеснуло дуло,
Следом выстрелы раздались,
На песок упали гильзы,
Ну а ты не поднималась...

Исполнение, live, группа «Позитив». Текст — Толик Панков.
https://youtu.be/jkEP_aan6q4?t=878

Кстати да, я использовал феминетивы, когда это не было мейнстримом, о чем говорит название песни.