<html>
    <head>
      <base href="https://bugzilla.netfilter.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Unable to dnat to port without defining destination address in inet table"
   href="https://bugzilla.netfilter.org/show_bug.cgi?id=1428">1428</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Unable to dnat to port without defining destination address in inet table
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>nftables
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P5
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>nft
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>pablo@netfilter.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>kfm@plushkava.net
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Consider the following ruleset:

table inet t {
    chain c {
        meta nfproto ipv6 tcp dport 80 dnat to :9030
    }
}

Here, this produces "Error: Could not process rule: Address family not
supported by protocol". The manual states the following:

<span class="quote">> When used in the inet family (available with kernel 5.2), the dnat and snat statements require the use of the ip and ip6 keyword in case an address is provided.</span >

While "in case" is a little ambiguous, this sentence does not strictly imply
that an address is mandatory. Therefore, I had expected that the dnat to :port
form be usable.

It occurred to me that the parser might be thrown by the presence of the colon
but, in the event that this may be true, I can discern no way to help
disambiguate a standalone :port from the IPv6 address that is intentionally not
being declared here. On the other hand, the following rule is at least accepted
by the parser if declared within an ip or ip6 table:

    tcp dport 80 dnat to :9030

Is there a way that it could be made to work when declared within an inet
table?</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are watching all bug changes.</li>
      </ul>
    </body>
</html>