terça-feira, 13 de janeiro de 2015

O Campo TTL do Comando PING



TTL – É um campo existente no cabeçalho do Pacote IP que tem por finalidade evitar que o mesmo  fique rodando em loop infinito na rede. Ele é decrementado de uma unidade por segundo toda vez que passa por uma gateway.

Pois bem, há uma certa confusão com relação ao TTL que faz muita gente relaciona-lo com o numero de saltos, visto que, ao passar por cada gateway, ao menos um valor de TTL deve ser decrementado, ainda que o pacote não tenha ficado por lá por 1 segundo. Entretanto, o roteador pode decrementar mais de uma unidade TTL por segundo que este pacote tenha permanecido por lá. Assim, o TTL realmente expressa unidades de tempo e não de saltos”
http://netfindersbrasil.blogspot.com.br/2009/12/entendendo-o-campo-ttl-time-to-live.html


O padrão de alguns sistemas operacionais para o campo TTL do Ping:
·         UNIX – Valor = 255
·         WINDOWS – Valor = 128
·         LINUX – Valor = 64

Este campo pode ser usado por um invasor para descobrir o sistema operacional usado. Para evitar isto, pode-se alterar o valor do TTL padrão dificultando um pouco a vida dos invasores.

Para alterar o o valor de TTl no Windows, é necessário alterar o registro:
1       Iniciar – executar – regedit.exe
2              Localize a seguinte chave:
   HKEY_LOCAL_MACHINE\SYSTEM\CorrentControlSet\Services\Tcpip\Parameters
3  
   Localize a DWORD chamado DefaultTTL e edite o seu valor
Se ela não existir, Clique em Editar, Novo – Valor da Cadeia de Caracteres, depois coloque o valor desejado para o TTL.

Função Excel para retornar o último dia do mês

Function UltimoDiaDoMes(Ano As Integer, Mes As Integer) As Integer
    '1) Para um ano ser bisexto, ele deve ser divisível por 4,
    '   não pode ser por 100, exceto se for por 400
    '2) Retorna -1 se o mês for menor que 1 ou maior que 12
    Dim bEbissexto As Boolean
  
    If Ano Mod 4 = 0 Then
        If Ano Mod 100 = 0 Then
            If Ano Mod 400 = 0 Then
                bEbissexto = True
            Else
                bEbissexto = False
            End If
        Else
            bEbisexto = True
        End If
    Else
        bEbissexto = False
    End If
    Select Case Mes
        Case 1                              'Janeiro
            UltimoDiaDoMes = 31
        Case 2                              'Fevereiro
            If bEbissexto = True Then
                UltimoDiaDoMes = 29
            Else
                UltimoDiaDoMes = 28
            End If
        Case 3                              'Março
            UltimoDiaDoMes = 31
        Case 4                              'Abril
            UltimoDiaDoMes = 30
        Case 5                              'Maio
            UltimoDiaDoMes = 31
        Case 6                              'Junho
            UltimoDiaDoMes = 30
        Case 7                              'Julho
            UltimoDiaDoMes = 31
        Case 8                              'Agôsto
            UltimoDiaDoMes = 31
        Case 9                              'Setembro
            UltimoDiaDoMes = 30
        Case 10                             'Outubro
            UltimoDiaDoMes = 31
        Case 11                             'Novembro
            UltimoDiaDoMes = 30
        Case 12                             'Dezembro
            UltimoDiaDoMes = 31
        Case Else
            UltimoDiaDoMes = -1
    End Select
End Function