Pull to refresh
0
0
Alexey Pristavkin @avp

User

Send message
Спасибо большое за статью и предложенный скрипт.
Поскольку активно пользуюсь туннельным режимом IPsec, внес небольшое изменение в скрипт, чтобы он не изменял dst-addr, для соответствующих правил.

:if ([:len [/system script job find script=SetIpSecDstAddrFromDns]]>1) do={
  :error
}

:local DnsNameFromComment
:local ResolvedIpFromComment
:local ResolvedIpWithMaskFromComment

:local IpDstAddr
:local IpSaDstAddr
:local TunnelPolicy


:foreach IpSecPolicyCount in=[/ip ipsec policy find] do={
  :set DnsNameFromComment [/ip ipsec policy get $IpSecPolicyCount comment]
  :if ($DnsNameFromComment!="") do={
    :do {
      :set ResolvedIpFromComment ([:resolve $DnsNameFromComment])
      :set ResolvedIpWithMaskFromComment ($ResolvedIpFromComment . "/32")
      :set IpDstAddr [/ip ipsec policy get $IpSecPolicyCount dst-address]
      :set IpSaDstAddr [/ip ipsec policy get $IpSecPolicyCount sa-dst-address]
      :set TunnelPolicy [/ip ipsec policy get $IpSecPolicyCount tunnel]
      :if ($ResolvedIpWithMaskFromComment!=$IpDstAddr or $ResolvedIpFromComment!=$IpSaDstAddr) do={
        :if ($TunnelPolicy=no) do={
          :log warning ("[SetIpSecDstAddrFromDns] Change IPsec policy dst-addr and sa-dst-addr from " . $IpSaDstAddr . " to " . $ResolvedIpFromComment . " for $DnsNameFromComment")
          /ip ipsec policy set $IpSecPolicyCount dst-address=$ResolvedIpWithMaskFromComment sa-dst-address=$ResolvedIpFromComment
        } else={
          :log warning ("[SetIpSecDstAddrFromDns] Change IPsec tunnel policy dst-addr from " . $IpSaDstAddr . " to " . $ResolvedIpFromComment . " for $DnsNameFromComment")
          /ip ipsec policy set $IpSecPolicyCount sa-dst-address=$ResolvedIpFromComment
        }
      }
    } on-error={
      :set ResolvedIpFromComment "unknown"
      :log error ("[SetIpSecDstAddrFromDns] Cant resolve name " . $DnsNameFromComment)
    }
  }
}

:local IpPeerAddr
:foreach IpSecPeerCount in=[/ip ipsec peer find] do={
  :set DnsNameFromComment [/ip ipsec peer get $IpSecPeerCount comment]
  :if ($DnsNameFromComment!="") do={
    :do {
      :set ResolvedIpFromComment [:resolve $DnsNameFromComment]
      :set ResolvedIpWithMaskFromComment ($ResolvedIpFromComment . "/32")
      :set IpPeerAddr [/ip ipsec peer get $IpSecPeerCount address]
      :if ($ResolvedIpWithMaskFromComment!=$IpPeerAddr) do={
        :log warning ("[SetIpSecDstAddrFromDns] Change IPsec peer addr from " . $IpPeerAddr . " to " . $ResolvedIpFromComment . " for $DnsNameFromComment")
        /ip ipsec peer set $IpSecPeerCount address=$ResolvedIpWithMaskFromComment
      }
    } on-error={
      :set ResolvedIpFromComment "unknown"
      :log error ("[SetIpSecDstAddrFromDns] Cant resolve name " . $DnsNameFromComment)
    }
  }
}

Сама идея хорошая, но очень уж джинсово все написано!
Заглавная фотка из интернетов, фотки статьи сперты заимствованы с упомянутого iFixit, а именно из статьи как поменять диск, при этом упоминания о заимствовании как бы нет, а должно бы быть. Тема замены диска раскрыта процентов на 30-35 — не описана процедура извлечения материнской платы, а она очень нетривиальна — она выталкивается через два отверстия специальным съемником, который в домашних условиях заменяется двумя крепкими гвоздями. Как снимать блок питания тоже не понятно. Не знаю как сейчас, а четыре года назад самые бюджетные наборы для установки дополнительно диска состояли только из шлейфа и наклейки крепящей шлейф к диску, винтов в комплекте не было. В итоге многие, и я в их числе, просто клали диск на свое место, подпирали 2 кусочками ластика к верхней стенке корпуса.

К софтверной части статьи еще больше вопросов: какой сакральный смысл вкладывается в имя группы "12AF7FVB-1440-E3F4-NV4F-AX86DVQW"?!?! При этом о том как включить trim ни слова, а без него, в большинстве случаев очень скоро установленный SSD начнет тормозить, и смысл всех проведенных манипуляций будет сведен к нулю.

В общем OCZ упомянули 3 раза, фотку сфотографировали одну, как все сделать, а уж тем более сделать все правильно не рассказали вообще.

Хороший способ, если есть на то желание, убить время, и запостить хоть что-нибудь на хабр.
В другом случае смысла так сложно вешать рамки нет чуть более чем полностью. На первом же этапе рамки раскладываются на полу наглазок/по линейке, и нет препятствий повесить их так же, на тот же глазок/по линейке на стену.

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity