Results 1 to 3 of 3
  1. #1
    Join Date
    Jun 2011
    Location
    Kerala,India
    Posts
    620

    Question exim error IPv6 socket creation failed

    Hi All,

    I am interested in solving the exim errors developed.

    Can you help me solve this issue in exim setup?

    tail -f /var/log/exim/main.log
    2011-06-15 16:01:49 IPv6 socket creation failed: Address family not supported by protocol
    2011-06-15 16:01:49 Failed to create IPv6 socket for wildcard listening (Address family not supported by protocol): will use IPv4
    2011-06-15 16:01:51 IPv6 socket creation failed: Address family not supported by protocol

  2. #2
    Join Date
    Jul 2009
    Location
    UK
    Posts
    1,308
    2011-06-15 16:01:49 Failed to create IPv6 socket for wildcard listening (Address family not supported by protocol): will use IPv4

    Whats the lines in your config file regarding the networking.

    Also, What is your IPv6 address? You may need to specify it in the config file rather than using something like ::*
    It sounds like your asking exim to find your IP or listen to any IPv6 address.
    Obviously, Listening to every ipv6 address on a /64 is gonna kill it. So I would suspect you need to hard code the address in the config..
    Live Chat Support Software for your Business website - IMsupporting.com

  3. #3
    Join Date
    Jun 2011
    Location
    Kerala,India
    Posts
    620

    here the exim.conf

    Heres my exim.cond please have alook


    MAILMAN_HOME=/usr/local/mailman
    MAILMAN_WRAP=MAILMAN_HOME/mail/mailman
    MAILMAN_USER=mailnull
    MAILMAN_GROUP=mail


    # primary_hostname =

    # Your IP address
    #MY_IP = CHANGE
    MY_IP = 218.241.96.8

    # The next three settings create two lists of domains and one list of hosts.
    # These lists are referred to later in this configuration using the syntax
    # +local_domains, +relay_to_domains, and +relay_from_hosts, respectively. They
    # are all colon-separated lists:

    # If you are using MySQL, uncomment the following two lines:
    VIRTUAL_DOMAINS = SELECT DISTINCT domain FROM domains WHERE type = 'local' AND enabled = '1' AND domain = '${quote_mysql:$domain}'
    RELAY_DOMAINS = SELECT DISTINCT domain FROM domains WHERE type = 'relay' AND domain = '${quote_mysql:$domain}'
    ALIAS_DOMAINS = SELECT DISTINCT alias FROM domainalias WHERE alias = '${quote_mysql:$domain}'

    # If you are using PGSQL, uncomment the following four lines:
    #VIRTUAL_DOMAINS = SELECT DISTINCT domain || ' : ' FROM domains WHERE type = 'local'
    #RELAY_DOMAINS = SELECT DISTINCT domain || ' : ' FROM domains WHERE type = 'relay'

    ALIAS_DOMAINS = SELECT DISTINCT alias FROM domainalias WHERE alias = '${quote_mysql:$domain}'

    # If you are using PGSQL, uncomment the following four lines:
    #VIRTUAL_DOMAINS = SELECT DISTINCT domain || ' : ' FROM domains WHERE type = 'local'
    #RELAY_DOMAINS = SELECT DISTINCT domain || ' : ' FROM domains WHERE type = 'relay'

    domainlist local_domains = @ : pear.silverwraith.com : ${lookup mysql{VIRTUAL_DOMAINS}} : ${lookup mysql{ALIAS_DOMAINS}}
    domainlist relay_to_domains = ${lookup mysql{RELAY_DOMAINS}}
    hostlist relay_from_hosts = localhost : 192.168.0.0/24 : MY_IP
    trusted_users = avleen:www
    acl_smtp_rcpt = acl_check_rcpt

    # You should not change that setting until you understand how ACLs work.

    # The following ACL entry is used if you want to do content scanning with the
    # exiscan-acl patch. When you uncomment this line, you must also review the
    # acl_check_content entry in the ACL section further below.

    acl_smtp_data = acl_check_content

    acl_smtp_helo = acl_check_helo

    # This configuration variable defines the virus scanner that is used with
    # the 'malware' ACL condition of the exiscan acl-patch. If you do not use
    # virus scanning, leave it commented. Please read doc/exiscan-acl-readme.txt
    # for a list of supported scanners.

    av_scanner = clamd:/var/run/clamav/clamd.sock

    spamd_address = 127.0.0.1 783
    daemon_smtp_ports = 25 : 465 : 587
    tls_on_connect_ports = 465
    # Specify the domain you want to be added to all unqualified addresses
    # here. An unqualified address is one that does not contain an "@" character
    # followed by a domain. For example, "[email protected]" is a fully qualified
    # address, but the string "caesar" (i.e. just a login name) is an unqualified
    # email address. Unqualified addresses are accepted only from local callers by
    # default. See the recipient_unqualified_hosts option if you want to permit
    # unqualified addresses from remote sources. If this option is not set, the
    # primary_hostname value is used for qualification.

    # qualify_domain =


    exim_user = mailnull
    exim_group = mail
    never_users = root


    # The setting below causes Exim to do a reverse DNS lookup on all incoming
    # IP calls, in order to get the true host name. If you feel this is too
    # expensive, you can specify the networks for which a lookup is done, or
    # remove the setting entirely.

    host_lookup = *
    # This option unfreezes frozen bounce messages after two days, tries
    # once more to deliver them, and ignores any delivery failures.

    ignore_bounce_errors_after = 2d

    # This option cancels (removes) frozen messages that are older than a week.

    timeout_frozen_after = 7d


    # We also want a little more detail in our logs, helps with debugging

    log_selector = +subject


    ######################################################################
    # ACL CONFIGURATION #
    # Specifies access control lists for incoming SMTP mail #
    ######################################################################

    begin acl
    #.include /usr/local/etc/exim/vexim-acl-check-spf.conf

    acl_check_helo:

    # Include Vexim specific helo ACLs
    #.include /usr/local/etc/exim/vexim-acl-check-helo.conf


    begin acl
    #.include /usr/local/etc/exim/vexim-acl-check-spf.conf

    acl_check_helo:

    # Include Vexim specific helo ACLs
    #.include /usr/local/etc/exim/vexim-acl-check-helo.conf

    # This access control list is used for every RCPT command in an incoming
    # SMTP message. The tests are run in order until the address is either
    # accepted or denied.

    acl_check_rcpt:

    # Accept if the source is local SMTP (i.e. not over TCP/IP). We do this by
    # testing for an empty sending host field.

    accept hosts = :

    # Include Vexim specific rcpt ACLs
    #.include /usr/local/etc/exim/vexim-acl-check-rcpt.conf

    # Deny if the local part contains @ or % or / or | or !. These are rarely
    # found in genuine local parts, but are often tried by people looking to
    # circumvent relaying restrictions.

    deny local_parts = ^.*[@%!/|] : ^\\.

    # Accept mail to postmaster in any local domain, regardless of the source,
    # and without verifying the sender.

    accept local_parts = postmaster
    domains = +local_domains
    accept domains = +local_domains
    endpass
    verify = recipient

    # Accept if the address is in a domain for which we are relaying, but again,
    # only if the recipient can be verified.

    accept domains = +relay_to_domains
    endpass
    verify = recipient

    # If control reaches this point, the domain is neither in +local_domains
    # nor in +relay_to_domains.

    # Accept if the message comes from one of the hosts for which we are an
    # outgoing relay. Recipient verification is omitted here, because in many
    # cases the clients are dumb MUAs that don't cope well with SMTP error
    # responses. If you are actually relaying out from MTAs, you should probably
    # add recipient verification here.

    accept hosts = +relay_from_hosts

    # Accept if the message arrived over an authenticated connection, from
    # any host. Again, these messages are usually from MUAs, so recipient
    # verification is omitted.

    accept authenticated = *













    check_local_user
    file = $home/.forward
    no_verify
    no_expn
    check_ancestor
    # allow_filter
    file_transport = address_file
    pipe_transport = address_pipe_local
    reply_transport = address_reply
    condition = ${if exists{$home/.forward} {yes} {no} }
    group = mail


    # This router matches local user mailboxes. If the router fails, the error
    # message is "Unknown user".

    localuser:
    driver = accept
    check_local_user
    transport = local_delivery
    cannot_route_message = Unknown user



    ######################################################################
    # TRANSPORTS CONFIGURATION #
    ######################################################################
    # ORDER DOES NOT MATTER #
    # Only one appropriate transport is called for each delivery. #
    ######################################################################

    # A transport is used only when referenced from a router that successfully
    # handles an address.

    begin transports


    # This transport is used for delivering messages over SMTP connections.

    remote_smtp:
    driver = smtp

    # This transport is used for local delivery to user mailboxes in traditional
    # BSD mailbox format. By default it will be run under the uid and gid of the
    # local user, and requires the sticky bit to be set on the /var/mail directory.
    # Some systems use the alternative approach of running mail deliveries under a
    # particular group instead of using the sticky bit. The commented options below
    # show how this can be done.

    local_delivery:
    driver = appendfile
    file = /var/mail/$local_part
    delivery_date_add
    envelope_to_add
    return_path_add
    group = mail
    user = $local_part
    mode = 0660
    no_mode_fail_narrower

    virtual_delivery:
    driver = appendfile
    envelope_to_add
    return_path_add
    mode = 0600
    maildir_format = true
    create_directory = true
    directory = ${lookup mysql{select smtp from users,domains \
    where localpart = '${quote_mysql:$local_part}' \
    and domain = '${quote_mysql:$domain}' \
    and users.domain_id = domains.domain_id}}
    user = ${lookup mysql{select users.uid from users,domains \
    where localpart = '${quote_mysql:$local_part}' \
    and domain = '${quote_mysql:$domain}' \
    and users.domain_id = domains.domain_id}}
    group = ${lookup mysql{select users.gid from users,domains \
    where localpart = '${quote_mysql:$local_part}' \
    and domain = '${quote_mysql:$domain}' \
    and users.domain_id = domains.domain_id}}
    quota = ${lookup mysql{select users.quota from users,domains \
    where localpart = '${quote_mysql:$local_part}' \
    and domain = '${quote_mysql:$domain}' \
    and users.domain_id = domains.domain_id}{${value}M}}
    quota_is_inclusive = false
    #quota_size_regex = ,S=(\d+):
    quota_warn_threshold = 75%
    maildir_use_size_file = false
    quota_warn_message = "To: $local_part@$domain\n\
    Subject: Mailbox quota warning\n\n\
    This message was automatically generated by the mail delivery software.\n\n\
    You are now using over 75% of your allocated mail storage quota.\n\n\
    If your mailbox fills completely, further incoming messages will be automatically\n\
    returned to their senders.\n\n\
    Please take note of this and remove unwanted mail from your mailbox.\n"

    virtual_vacation_delivery:
    driver = autoreply
    from = "${local_part}@${domain}"
    to = ${sender_address}
    subject = "Autoreply from ${local_part}@${domain}"
    text = ${lookup mysql{select vacation from users,domains \
    where domain='${quote_mysql:$domain}' \
    and localpart='${quote_mysql:$local_part}' \
    and users.domain_id=domains.domain_id}}

    mailman_transport:
    driver = pipe
    command = MAILMAN_WRAP \
    '${if def:local_part_suffix \
    {${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
    {post}}' \
    $local_part
    current_directory = MAILMAN_HOME
    home_directory = MAILMAN_HOME
    user = MAILMAN_USER
    group = MAILMAN_GROUP

    # This transport is used for handling pipe deliveries generated by alias or
    # .forward files. If the pipe generates any standard output, it is returned
    # to the sender of the message as a delivery error. Set return_fail_output
    # instead of return_output if you want this to happen only when the pipe fails
    # to complete normally. You can set different transports for aliases and
    # forwards if you want to - see the references to address_pipe in the routers
    # section above.

    address_pipe:
    driver = pipe
    return_output
    user = ${lookup mysql{select users.uid from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.domain_id = domains.domain_id}}
    group = ${lookup mysql{select users.gid from users,domains where localpart = '${quote_mysql:$local_part}' and domain = '${quote_mysql:$domain}' and users.domain_id = domains.domain_id}}

    address_pipe_catchall:
    driver = pipe
    return_output
    user = ${lookup mysql{select users.uid from users,domains where localpart = '*' and domain = '${quote_mysql:$domain}' and users.domain_id = domains.domain_id}}
    group = ${lookup mysql{select users.gid from users,domains where localpart = '*' and domain = '${quote_mysql:$domain}' and users.domain_id = domains.domain_id}}

    address_pipe_local:
    driver = pipe
    return_output


    # This transport is used for handling deliveries directly to files that are
    # generated by aliasing or forwarding.

    address_file:
    driver = appendfile
    delivery_date_add
    envelope_to_add
    return_path_add


    # This transport is used for handling autoreplies generated by the filtering
    # option of the userforward router.

    address_reply:
    driver = autoreply



    ######################################################################
    # RETRY CONFIGURATION #
    ######################################################################

    begin retry

    # This single retry rule applies to all domains and all errors. It specifies
    # retries every 15 minutes for 2 hours, then increasing retry intervals,
    # starting at 1 hour and increasing each time by a factor of 1.5, up to 16
    # hours, then retries every 6 hours until 4 days have passed since the first
    # failed delivery.

    # Domain Error Retries
    # ------ ----- -------

    * * F,2h,15m; G,16h,1h,1.5; F,14d,6h



    ######################################################################
    # REWRITE CONFIGURATION #
    ######################################################################

    # There are no rewriting specifications in this default configuration file.

    begin rewrite



    ######################################################################
    # AUTHENTICATION CONFIGURATION #
    ######################################################################

    # There are no authenticator specifications in this default configuration file.

    begin authenticators

    plain_login:
    driver = plaintext
    public_name = PLAIN
    server_condition = ${lookup mysql{SELECT '1' FROM users \
    WHERE username = '${quote_mysql:$2}' \
    AND clear = '${quote_mysql:$3}'} {yes}{no}}
    server_set_id = $2

    fixed_login:
    driver = plaintext
    public_name = LOGIN
    server_prompts = "Username:: : Password::"
    server_condition = ${lookup mysql{SELECT '1' FROM users \
    WHERE username = '${quote_mysql:$1}' \
    AND clear = '${quote_mysql:$2}'} {yes}{no}}
    server_set_id = $1

    fixed_cram:
    driver = cram_md5
    public_name = CRAM-MD5
    server_secret = ${lookup mysql{SELECT clear FROM users \
    WHERE username = '${quote_mysql:$1}'}{$value}fail}
    server_set_id = $1


    ######################################################################
    # CONFIGURATION FOR local_scan() #
    ######################################################################

    # If you have built Exim to include a local_scan() function that contains
    # tables for private options, you can define those options here. Remember to
    # uncomment the "begin" line. It is commented by default because it provokes
    # an error with Exim binaries that are not built with LOCAL_SCAN_HAS_OPTIONS
    # set in the Local/Makefile.

    # begin local_scan


    # End of Exim configuration file

Similar Threads

  1. Virtuozzo : getpeername error 88 (Socket operation on non-socket)
    By CrownS in forum Hosting Security and Technology
    Replies: 2
    Last Post: 06-22-2009, 01:22 PM
  2. Can't write to data socket. Socket error = #10054.
    By MartynD in forum Hosting Security and Technology
    Replies: 1
    Last Post: 10-02-2007, 03:25 AM
  3. FTP Error (Socket error = #10054)
    By cfaice in forum Dedicated Server
    Replies: 1
    Last Post: 05-09-2007, 07:44 PM
  4. Replies: 0
    Last Post: 09-20-2005, 08:26 AM
  5. exim has failed !! Error : package exim is not installed!!
    By atul in forum Hosting Security and Technology
    Replies: 26
    Last Post: 06-30-2004, 08:56 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •