When `peers.dat` is corrupted an error message is shown: `Invalid or corrupt peers.dat (Checksum mismatch, data corrupted).` then the node restart.

Most of our users aren't really tech enough to manually delete the `peers.dat` files, nor can we detect it for them. It means that this error give us lot's of work on our support team when somebody is impacted.

`peers.dat` isn't an essential file, as such Bitcoin Core should just be fine restarting without crashing.

A bash workaround to detect the checksum mismatch would also considerably help us.
s << nSize;
        for (int i = 0; i < ADDRMAN_BUCKET_SIZE; i++) {
            if (vvNew[bucket][i] != -1) {
                int nIndex = mapUnkIds[vvNew[bucket][i]];
                s << nIndex;
            }
        }
    }
    
    
    s << m_netgroupman.GetAsmapChecksum();
}
template <typename Stream>
void AddrManImpl::Unserialize(Stream& s_)
{
    LOCK(cs);
    assert(vRandom.empty());
    Format format;
    s_ >> Using<CustomUintFormatter<1>>(format);
    int stream_version = s_.GetVersion();
    if (format >= Format::V3_BIP155) {
        
        
        stream_version |= ADDRV2_FORMAT;
    }
    OverrideStream<Stream> s(&s_, s_.GetType(), stream_version);
    uint8_t compat;
    s >> compat;
    if (compat < INCOMPATIBILITY_BASE) {
        throw std::ios_base::failure(strprintf(