У него есть полный доступ к машине, как если бы вы арендовали у кого-то компьютер и приходили к нему попользоваться. А с ним можно и рутовый пароль сбросить, можно загрузиться с livecd и посмотреть данные, в общем можно всё что захочешь
по второму - это определение функции в псевдокоде, integer - тип возвращаемого реультата функции. вместо return используется присвоение значения имени функции. на с++ будет что-то вроде этого
По видимому вы смотрите разные пакеты.
Если я правильно понял у вас трафик Server0 - L3 Switch ходит внутри ipsec.
По R5(255) - R4(254) - R3(253) - R2(252) - R1(251) - R0 ходят сами пакеты ipsec, которые формируются на R5 с ttl 255, на R0 придут уже с TTL 251.
Для пакетов от Server0 схема будет Server0 (255) - R5(254) - R0(253) - L3 Switch, соотвественно TTL на входе в свич получится 253
Маркировать соединения, по ним вешать маркировку маршрута через нужного провайдера. Ну и на выходе делать правильный masquerade/src-nat.
Хотите - выделяйте в отдельную сеть, хотите - выдайте статический адрес внутри сети и маркируйте только его, хотите - подключите в отдельный порт и маркируйте на нём, в общем как удобнее будет.
Заводите 7 провайдерских вланов транком на микротик, на нём поднимаете адреса от провайдеров. Создаёте 7 таблиц маршрутизации на каждого провайдера.
Кабинеты пилите на ещё 7 вланов и так-же кидаете транком на микротик, поднимаете 7 сетей для разных кабинетов.
На входе влана каждого кабинета сперва вешаете маркировку трафика и потом на выходе цепляете маркировку маршрутизации.
Пример: https://geektimes.ru/post/186284/