Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
0.34 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.05 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
App\Entity\EntryComment {#1396
  +user: Proxies\__CG__\App\Entity\User {#1365 …}
  +entry: App\Entity\Entry {#1790 …}
  +magazine: App\Entity\Magazine {#314
    +icon: Proxies\__CG__\App\Entity\Image {#295 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#324
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#286 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#282 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#271 …}
    +entries: Doctrine\ORM\PersistentCollection {#229 …}
    +posts: Doctrine\ORM\PersistentCollection {#187 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#249 …}
    +bans: Doctrine\ORM\PersistentCollection {#166 …}
    +reports: Doctrine\ORM\PersistentCollection {#152 …}
    +badges: Doctrine\ORM\PersistentCollection {#130 …}
    +logs: Doctrine\ORM\PersistentCollection {#120 …}
    +awards: Doctrine\ORM\PersistentCollection {#109 …}
    +categories: Doctrine\ORM\PersistentCollection {#96 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#318
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#317
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#2466 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#2355 …}
  +body: """
    Since their modem is handing out DHCP addresses, is there any reason why you couldn’t just connect that cable to your router’s internet port, and configure it for DHCP on that interface? Then the provider would always see their modem, and you’d still have functional routing that you control.\n
    \n
    Since consumer routers have a dedicated interface for this, you don’t have to make routing tables to tell it which way to the internet, it already knows it’s all out that interface.\n
    \n
    Just make sure your router uses a different private address range for your network than the one handed out by the modem.\n
    \n
    So your router should get a DHCP and DNS settings from the modem, and will know it’s the first hop to the internet.\n
    \n
    I do this to create test networks at home (my cable modem has multiple ethernet ports), using cheap consumer wifi routers. By using the internet port to connect, I can do some minimal isolation just by using different address ranges, not configuring DNS on those boxes, and disabling DNS on my router.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706226930 {#1768
    date: 2024-01-26 00:55:30.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Malice@lemmy.dbzer0.com"
    "@BearOfaTime@lemm.ee"
    "@terminhell@lemmy.dbzer0.com"
  ]
  +children: Doctrine\ORM\PersistentCollection {#2167 …}
  +nested: Doctrine\ORM\PersistentCollection {#2357 …}
  +votes: Doctrine\ORM\PersistentCollection {#2429 …}
  +reports: Doctrine\ORM\PersistentCollection {#2442 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1359 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2485 …}
  -id: 340792
  -bodyTs: "'address':8,96,171 'alreadi':79 'alway':39 'box':178 'cabl':20,143 'cheap':150 'configur':28,174 'connect':18,160 'consum':54,151 'control':52 'couldn':15 'creat':137 'd':45 'dedic':58 'dhcp':7,31,115 'differ':94,170 'disabl':180 'dns':117,175,181 'ethernet':147 'first':128 'function':48 'get':113 'hand':5,104 'home':141 'hop':129 'interfac':34,59,86 'internet':25,77,132,157 'isol':166 'know':80,124 'make':67,88 'minim':165 'modem':3,42,108,121,144 'multipl':146 'network':100,139 'one':103 'port':26,148,158 'privat':95 'provid':37 'rang':97,172 'reason':12 'rout':49,68 'router':23,55,91,111,153,184 'see':40 'set':118 'sinc':1,53 'still':46 'sure':89 'tabl':69 'tell':71 'test':138 'use':92,149,155,169 'way':74 'wifi':152 'would':38"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemm.ee/comment/8656705"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706226930 {#1938
    date: 2024-01-26 00:55:30.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
App\Entity\EntryComment {#1396
  +user: Proxies\__CG__\App\Entity\User {#1365 …}
  +entry: App\Entity\Entry {#1790 …}
  +magazine: App\Entity\Magazine {#314
    +icon: Proxies\__CG__\App\Entity\Image {#295 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#324
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#286 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#282 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#271 …}
    +entries: Doctrine\ORM\PersistentCollection {#229 …}
    +posts: Doctrine\ORM\PersistentCollection {#187 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#249 …}
    +bans: Doctrine\ORM\PersistentCollection {#166 …}
    +reports: Doctrine\ORM\PersistentCollection {#152 …}
    +badges: Doctrine\ORM\PersistentCollection {#130 …}
    +logs: Doctrine\ORM\PersistentCollection {#120 …}
    +awards: Doctrine\ORM\PersistentCollection {#109 …}
    +categories: Doctrine\ORM\PersistentCollection {#96 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#318
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#317
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#2466 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#2355 …}
  +body: """
    Since their modem is handing out DHCP addresses, is there any reason why you couldn’t just connect that cable to your router’s internet port, and configure it for DHCP on that interface? Then the provider would always see their modem, and you’d still have functional routing that you control.\n
    \n
    Since consumer routers have a dedicated interface for this, you don’t have to make routing tables to tell it which way to the internet, it already knows it’s all out that interface.\n
    \n
    Just make sure your router uses a different private address range for your network than the one handed out by the modem.\n
    \n
    So your router should get a DHCP and DNS settings from the modem, and will know it’s the first hop to the internet.\n
    \n
    I do this to create test networks at home (my cable modem has multiple ethernet ports), using cheap consumer wifi routers. By using the internet port to connect, I can do some minimal isolation just by using different address ranges, not configuring DNS on those boxes, and disabling DNS on my router.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706226930 {#1768
    date: 2024-01-26 00:55:30.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Malice@lemmy.dbzer0.com"
    "@BearOfaTime@lemm.ee"
    "@terminhell@lemmy.dbzer0.com"
  ]
  +children: Doctrine\ORM\PersistentCollection {#2167 …}
  +nested: Doctrine\ORM\PersistentCollection {#2357 …}
  +votes: Doctrine\ORM\PersistentCollection {#2429 …}
  +reports: Doctrine\ORM\PersistentCollection {#2442 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1359 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2485 …}
  -id: 340792
  -bodyTs: "'address':8,96,171 'alreadi':79 'alway':39 'box':178 'cabl':20,143 'cheap':150 'configur':28,174 'connect':18,160 'consum':54,151 'control':52 'couldn':15 'creat':137 'd':45 'dedic':58 'dhcp':7,31,115 'differ':94,170 'disabl':180 'dns':117,175,181 'ethernet':147 'first':128 'function':48 'get':113 'hand':5,104 'home':141 'hop':129 'interfac':34,59,86 'internet':25,77,132,157 'isol':166 'know':80,124 'make':67,88 'minim':165 'modem':3,42,108,121,144 'multipl':146 'network':100,139 'one':103 'port':26,148,158 'privat':95 'provid':37 'rang':97,172 'reason':12 'rout':49,68 'router':23,55,91,111,153,184 'see':40 'set':118 'sinc':1,53 'still':46 'sure':89 'tabl':69 'tell':71 'test':138 'use':92,149,155,169 'way':74 'wifi':152 'would':38"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemm.ee/comment/8656705"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706226930 {#1938
    date: 2024-01-26 00:55:30.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
App\Entity\EntryComment {#1396
  +user: Proxies\__CG__\App\Entity\User {#1365 …}
  +entry: App\Entity\Entry {#1790 …}
  +magazine: App\Entity\Magazine {#314
    +icon: Proxies\__CG__\App\Entity\Image {#295 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 222
    +entryCommentCount: 3916
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729582735 {#324
      date: 2024-10-22 09:38:55.0 +02:00
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#286 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#282 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#271 …}
    +entries: Doctrine\ORM\PersistentCollection {#229 …}
    +posts: Doctrine\ORM\PersistentCollection {#187 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#249 …}
    +bans: Doctrine\ORM\PersistentCollection {#166 …}
    +reports: Doctrine\ORM\PersistentCollection {#152 …}
    +badges: Doctrine\ORM\PersistentCollection {#130 …}
    +logs: Doctrine\ORM\PersistentCollection {#120 …}
    +awards: Doctrine\ORM\PersistentCollection {#109 …}
    +categories: Doctrine\ORM\PersistentCollection {#96 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703473826 {#318
      date: 2023-12-25 04:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#317
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +parent: Proxies\__CG__\App\Entity\EntryComment {#2466 …}
  +root: Proxies\__CG__\App\Entity\EntryComment {#2355 …}
  +body: """
    Since their modem is handing out DHCP addresses, is there any reason why you couldn’t just connect that cable to your router’s internet port, and configure it for DHCP on that interface? Then the provider would always see their modem, and you’d still have functional routing that you control.\n
    \n
    Since consumer routers have a dedicated interface for this, you don’t have to make routing tables to tell it which way to the internet, it already knows it’s all out that interface.\n
    \n
    Just make sure your router uses a different private address range for your network than the one handed out by the modem.\n
    \n
    So your router should get a DHCP and DNS settings from the modem, and will know it’s the first hop to the internet.\n
    \n
    I do this to create test networks at home (my cable modem has multiple ethernet ports), using cheap consumer wifi routers. By using the internet port to connect, I can do some minimal isolation just by using different address ranges, not configuring DNS on those boxes, and disabling DNS on my router.
    """
  +lang: "en"
  +isAdult: false
  +favouriteCount: 2
  +score: 0
  +lastActive: DateTime @1706226930 {#1768
    date: 2024-01-26 00:55:30.0 +01:00
  }
  +ip: null
  +tags: null
  +mentions: [
    "@Malice@lemmy.dbzer0.com"
    "@BearOfaTime@lemm.ee"
    "@terminhell@lemmy.dbzer0.com"
  ]
  +children: Doctrine\ORM\PersistentCollection {#2167 …}
  +nested: Doctrine\ORM\PersistentCollection {#2357 …}
  +votes: Doctrine\ORM\PersistentCollection {#2429 …}
  +reports: Doctrine\ORM\PersistentCollection {#2442 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1359 …}
  +notifications: Doctrine\ORM\PersistentCollection {#2485 …}
  -id: 340792
  -bodyTs: "'address':8,96,171 'alreadi':79 'alway':39 'box':178 'cabl':20,143 'cheap':150 'configur':28,174 'connect':18,160 'consum':54,151 'control':52 'couldn':15 'creat':137 'd':45 'dedic':58 'dhcp':7,31,115 'differ':94,170 'disabl':180 'dns':117,175,181 'ethernet':147 'first':128 'function':48 'get':113 'hand':5,104 'home':141 'hop':129 'interfac':34,59,86 'internet':25,77,132,157 'isol':166 'know':80,124 'make':67,88 'minim':165 'modem':3,42,108,121,144 'multipl':146 'network':100,139 'one':103 'port':26,148,158 'privat':95 'provid':37 'rang':97,172 'reason':12 'rout':49,68 'router':23,55,91,111,153,184 'see':40 'set':118 'sinc':1,53 'still':46 'sure':89 'tabl':69 'tell':71 'test':138 'use':92,149,155,169 'way':74 'wifi':152 'would':38"
  +ranking: 0
  +commentCount: 0
  +upVotes: 0
  +downVotes: 0
  +visibility: "visible             "
  +apId: "https://lemm.ee/comment/8656705"
  +editedAt: null
  +createdAt: DateTimeImmutable @1706226930 {#1938
    date: 2024-01-26 00:55:30.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS DENIED
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED edit
App\Entity\Magazine {#314
  +icon: Proxies\__CG__\App\Entity\Image {#295 …}
  +name: "selfhosted@lemmy.world"
  +title: "selfhosted"
  +description: """
    A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
    \n
    Rules:\n
    \n
    - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
    - No spam posting.\n
    - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
    - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
    - No trolling.\n
    \n
    Resources:\n
    \n
    - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
    - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
    - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
    \n
    > Any issues on the community? Report it using the report flag.\n
    \n
    > Questions? DM the mods!
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 222
  +entryCommentCount: 3916
  +postCount: 0
  +postCommentCount: 0
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729582735 {#324
    date: 2024-10-22 09:38:55.0 +02:00
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#286 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#282 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#271 …}
  +entries: Doctrine\ORM\PersistentCollection {#229 …}
  +posts: Doctrine\ORM\PersistentCollection {#187 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#249 …}
  +bans: Doctrine\ORM\PersistentCollection {#166 …}
  +reports: Doctrine\ORM\PersistentCollection {#152 …}
  +badges: Doctrine\ORM\PersistentCollection {#130 …}
  +logs: Doctrine\ORM\PersistentCollection {#120 …}
  +awards: Doctrine\ORM\PersistentCollection {#109 …}
  +categories: Doctrine\ORM\PersistentCollection {#96 …}
  -id: 120
  +apId: "selfhosted@lemmy.world"
  +apProfileId: "https://lemmy.world/c/selfhosted"
  +apPublicUrl: "https://lemmy.world/c/selfhosted"
  +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
  +apInboxUrl: "https://lemmy.world/inbox"
  +apDomain: "lemmy.world"
  +apPreferredUsername: "selfhosted"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1703473826 {#318
    date: 2023-12-25 04:10:26.0 +01:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1703473826 {#317
    date: 2023-12-25 04:10:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS DENIED
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details