# ibc

In IBC, blockchains do not directly pass messages to each other over the network. This is where relayer comes in. A relayer process monitors for updates on opens paths between sets of [IBC](https://ibcprotocol.org/) enabled chains. The relayer submits these updates in the form of specific message types to the counterparty chain. Clients are then used to track and verify the consensus state.

In addition to relaying packets, this relayer can open paths across chains, thus creating clients, connections and channels.

Additional information on how IBC works can be found [here](https://ibc.cosmos.network/).

## IBC Channels

{% tabs %}
{% tab title="Mainnet" %}

| source chain-id | destination | destination chain-id | source to destination channel | destination to source channel |
| --------------- | ----------- | -------------------- | ----------------------------- | ----------------------------- |
| PUNDXI          | f(x)Core    | fxcore               | channel-0                     | channel-0                     |
| PUNDXI          | Osmosis     | osmosis-1            | channel-1                     | channel-12618                 |
| {% endtab %}    |             |                      |                               |                               |

{% tab title="Testnet" %}

| source chain-id | destination | destination chain-id | source to destination channel | destination to source channel |
| --------------- | ----------- | -------------------- | ----------------------------- | ----------------------------- |
| payalebar       | f(x)Core    | dhobyghaut           | channel-0                     | channel-0                     |
| payalebar       | Osmosis     | osmo-test-5          | channel-3                     | channel-7744                  |
| {% endtab %}    |             |                      |                               |                               |
| {% endtabs %}   |             |                      |                               |                               |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.pundix.com/developers/cross-chain/ibc.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
