IP Cache | MDaemon Technologies, Ltd.

IP Cache


  • Please see attached PNG file for reference.

    ISSUE #1

    When reviewing this screen shot the first thing that stands out is how few items there are.  The system has been up and running for several day for over 111K smtp out mails processed. We have the flag set ("Automatically cache uncached domains") enabled. Additionally we have the field ("Maximum cached entries") set to 9999

    Understanding the system will place in memory all items to be more efficient when reading, but after I stop and restart the application it should (I hope) write items to a file, right? 

     

    ISSUE #2

    If the field "Default time to live (minutes) " which has been set to 100, then why is the first item in the list (as an example "mx.use.net") show 3616 more minutes to live.



  • The default time to live is only used when you manually add entries to IP cache.  Entries that are automatically added by MDaemon use the TTL value returned in the DNS record.   

    If you send a message to a domain that does not currently have an IP cached does it get added to the cache?

    Its possible that many of the domains you are sending to have short TTLs and have already been removed from the list.  Its also possible that all the messages have been delivered to a small set of servers.   

    What does the smtp out log show is happening?  Do you have MDaemon configured to send to a smart host if direct delivery fails?  

    Also, check the contents of the ipcache.dat file in the MDaemon.ini file, does it match what the UI is showing?

     


  • "If you send a message to a domain that does not currently have an IP cached does it get added to the cache?"

    You can see on the left of the image mta6.am0.yahoodns.net is checked, resolved and is using 98.136.96.91, however on the right the ip cache file isn't populated at all with mta6.x.x

     

    "Also, check the contents of the ipcache.dat"

    It's empty other than the comments.

    " Do you have MDaemon configured to send to a smart host if direct delivery fails?  "

    Yes, but it is used only if primary delivery fails.

    "Its possible that many of the domains you are sending to have short TTLs and have already been removed from the list.  Its also possible that all the messages have been delivered to a small set of servers.   "

    So in the example above the TTL from Yahoo is (4) or four mintues, but the TTL on mta6.x (as an example) is (0) zero minutes so it should not be added, correct?


  • So in the example above the TTL from Yahoo is (4) or four mintues, but the TTL on mta6.x (as an example) is (0) zero minutes so it should not be added, correct?

    Correct

    It's empty other than the comments.

    Sorry, I forgot the file had been moved to the LocalData directory.  What does the IPcache.dat file in the MDaemon\localdata folder have in it?

    It should be updated 1 time per minute with the latest data.


  • Arron, understanding your last post I tried to capture as many pertenant pieces of inforation in one screen shot.

    1. Date/Time of the most recent smtp (out) communication which is at 10:48 to aspmx.l.google.com  with a TTL of 5 minutes.

    2. Date/Time of the file you mentioned IPCache.dat which is 10:51 which should contain aspmx.l.google.com 

    3. Lastly the content of the file itself (IPCache.dat), which doesn't show aspmx.l.google.com

     

    Please let me know if you need anything further.

    IPcache.dat


  • It looks like the log is showing a TTL of zero for the A record lookup on aspmx.l.google.com, which means it won't be cached.  Do you have another example we can look at?


  • Now that I understand the value of TTL I'm focused on the MX record and the resolutoin of the A record

    So if "gmail-smtp-in.l.google.com" has a TTL value of 28, yet when the system resolves the A record (D=gmail-smtp-in.l.google.com TTL=(2) A=[142.251.163.26])  the TTL is now 2 -- Is this correct?

    NOTE: Certainly when the TTL value is greater than Zero (0) the entries are correctly written to the IPCache.dat

    Thu 2023-06-08 13:14:26.236: [02537596] Resolving MX record for gmail.com (DNS Server: 1.0.0.1)...
    Thu 2023-06-08 13:14:26.254: [02537596] *  P=005 S=000 D=gmail.com TTL=(28) MX=[gmail-smtp-in.l.google.com]
    Thu 2023-06-08 13:14:26.254: [02537596] *  P=010 S=002 D=gmail.com TTL=(28) MX=[alt1.gmail-smtp-in.l.google.com]
    Thu 2023-06-08 13:14:26.254: [02537596] *  P=020 S=004 D=gmail.com TTL=(28) MX=[alt2.gmail-smtp-in.l.google.com]
    Thu 2023-06-08 13:14:26.254: [02537596] *  P=030 S=003 D=gmail.com TTL=(28) MX=[alt3.gmail-smtp-in.l.google.com]
    Thu 2023-06-08 13:14:26.254: [02537596] *  P=040 S=001 D=gmail.com TTL=(28) MX=[alt4.gmail-smtp-in.l.google.com]
    Thu 2023-06-08 13:14:26.254: [02537596] Attempting SMTP connection to gmail-smtp-in.l.google.com
    Thu 2023-06-08 13:14:26.255: [02537596] Resolving A record for gmail-smtp-in.l.google.com (DNS Server: 1.0.0.1)...
    Thu 2023-06-08 13:14:26.273: [02537596] *  D=gmail-smtp-in.l.google.com TTL=(2) A=[142.251.163.26]
    Thu 2023-06-08 13:14:26.274: [02537596] Attempting SMTP connection to 142.251.163.26:25
    Thu 2023-06-08 13:14:26.275: [02537596] Waiting for socket connection...
    Thu 2023-06-08 13:14:26.295: [02537596] *  Connection established 192.168.21.251:55192 --> 142.251.163.26:25
    Thu 2023-06-08 13:14:26.295: [02537596] Waiting for protocol to start...

    Another example showing the same strange behavor.


    Thu 2023-06-08 13:15:21.262: [02537606] Resolving MX record for northeastsecuritysolutions.com (DNS Server: 1.0.0.1)...
    Thu 2023-06-08 13:15:21.282: [02537606] *  P=000 S=000 D=northeastsecuritysolutions.com TTL=(60) MX=[northeastsecuritysolutions-com.mail.protection.outlook.com]
    Thu 2023-06-08 13:15:21.282: [02537606] Attempting SMTP connection to northeastsecuritysolutions-com.mail.protection.outlook.com
    Thu 2023-06-08 13:15:21.283: [02537606] Resolving A record for northeastsecuritysolutions-com.mail.protection.outlook.com (DNS Server: 1.0.0.1)...
    Thu 2023-06-08 13:15:21.363: [02537606] *  D=northeastsecuritysolutions-com.mail.protection.outlook.com TTL=(0) A=[104.47.56.138]
    Thu 2023-06-08 13:15:21.363: [02537606] *  D=northeastsecuritysolutions-com.mail.protection.outlook.com TTL=(0) A=[104.47.58.138]
    Thu 2023-06-08 13:15:21.363: [02537606] Randomly picked 104.47.56.138 from list of possible hosts
    Thu 2023-06-08 13:15:21.363: [02537606] Attempting SMTP connection to 104.47.56.138:25
    Thu 2023-06-08 13:15:21.365: [02537606] Waiting for socket connection...
    Thu 2023-06-08 13:15:21.450: [02537606] *  Connection established 192.168.21.251:55280 --> 104.47.56.138:25


  • Thu 2023-06-08 13:14:26.236: [02537596] Resolving MX record for gmail.com (DNS Server: 1.0.0.1)...
    Thu 2023-06-08 13:14:26.254: [02537596] *  P=005 S=000 D=gmail.com TTL=(28) MX=[gmail-smtp-in.l.google.com]

    This TTL value is returned as part of the MX record lookup and it is not used by the IP cache. 

    Thu 2023-06-08 13:14:26.255: [02537596] Resolving A record for gmail-smtp-in.l.google.com (DNS Server: 1.0.0.1)...
    Thu 2023-06-08 13:14:26.273: [02537596] *  D=gmail-smtp-in.l.google.com TTL=(2) A=[142.251.163.26]

    This is the TTL value that is returned as part of the A record lookup.  In this case the IP returned by the A record lookup would be cached for 2 minutes.

    Thu 2023-06-08 13:15:21.283: [02537606] Resolving A record for northeastsecuritysolutions-com.mail.protection.outlook.com (DNS Server: 1.0.0.1)...
    Thu 2023-06-08 13:15:21.363: [02537606] *  D=northeastsecuritysolutions-com.mail.protection.outlook.com TTL=(0) A=[104.47.56.138]

    In this case the IP returned by the A record lookup would not be cached as the TTL is zero.

     


Please login to reply this topic!